什么是Firebase设备到设备通知教程中的“serviceAccountKey.json”

我设法完成了完整的Firebase Android Codelab,没有太多问题,该应用程序运行完美。现在我想添加设备到设备通知。我发现了本教程:有些事情对我来说并不清楚。

  1. 在节点脚本中有一行如下:

var serviceAccount = require("path/to/serviceAccountKey.json");

什么是“ServiceAccountKey.json”文件?它只是google-services.json的另一个名称吗?如果没有,这是什么?

  1. 有没有一个简单的“点击”教程如何将节点服务器代码部署到Google环境中?

答案 1

在您关注的博客文章中,我们将使用 Firebase Admin SDK 在 Google Cloud 的 App Engine Flexible Environment 上运行节点.js脚本。服务帐号是一种向受信任的进程授予对 Google Cloud Platform 和 Firebase 资源的访问权限的方式。

通过 Google Cloud Console 创建一个服务帐户,然后下载相应的 JSON 文件。博客文章中的代码会查找该文件,并使用它来初始化 Firebase 管理 SDK。


答案 2

感谢 ,并继续弗兰克的回答..以下是一些其他观察结果

1. serviceAccountKey.json 不是实际的文件名

来自Android客户端的工作,我认为这是一个固定的名称,就像Android项目中一样。但是,它只是一个占位符名称。该文件是使用来自 Google 网页界面的唯一名称生成的,该文件是要在引用占位符的位置应用的文件。google-services.json


2.您只能获取文件一次

浏览那里的文档,我想也许您可以使用现有的服务帐户来获取该文件。但是,经过一番环顾四周之后..我尝试创建一个新文件,从它给出的对话框中,复选框告诉我们您只能获取该.json文件一次 - 在创建服务帐户项目时。

文档讨论了创建服务帐户,但我没有看到太多提及获取该.json文件的内容。这就是为什么在我看到这个对话之前,它似乎很雄伟。

enter image description here


3. 添加新服务帐户的屏幕

该管理UI有很多事情要做,包括从文档中转到IAM设置,角色等的各种引用。

冒着陈述显而易见的风险(但可能会帮助其他人比我更快地到达这里), - 这是我添加服务帐户并获取对话框以下载.json文件的视图。

enter image description here


推荐