我目前面临以下情况。
通过google API端点通过HttpCall发送Firebase消息:
https://fcm.googleapis.com/v1/projects/projectName/messages:send
在这里,我们必须使用OAuth2.0和有效的承载令牌,如本问题中所讨论的:
我应该使用什么Bearer令牌进行Firebase云消息测试?
在遵循这些步骤后,我能够通过谷歌API发送Firebase消息。
现在我想通过HttpCall获得Bearer令牌,而无需对游乐场进行手动步骤https://developers.google.com/oauthplayground.
我找不到任何关于如何";代币的交换授权码";通过简单的HttpCall。我不可能实现任何代码,因为我想在";Cloud Flow";,因此不可能加载任何外部DLL(如Firebase Admin DLL,它将实现此功能(。
感谢提供的任何帮助
下面的代码是安装在API集合上的Postman Pre-Request脚本,该集合包含您正在测试的路由。其目的是将静态凭据(如电子邮件密码组合或服务帐户密钥(转换为访问令牌,以便与API调用一起使用。
模拟用户
要使用它来代表用户进行测试,您需要在请求上添加一个X-Auth-Token-Type: user
标头(由下面的脚本使用和删除(,并且您需要设置以下环境变量:
名称 | |
---|---|
firebase_apiKey |
web应用程序的Firebase API密钥 |
firebase_test_user |
用于测试的帐户的电子邮件 |
firebase_test_password |
用于测试的帐户的密码 |
您可以使用firebase服务帐户从OAuth访问令牌中获得有效的Bearer令牌。从Firebase控制台使用您的服务帐户凭据。如果这在您的环境中是可能的,我建议使用OAuth 2选项,您可以在这里找到:https://firebase.google.com/docs/database/rest/auth#authenticate_with_an_access_token
否则,您将不得不铸造凭据,该凭据将提供一个访问令牌,该令牌将是一个有效的承载令牌。
需要注意的是,这仅在以下语言中可用:
- node.js
- python
- java
https://firebase.google.com/docs/cloud-messaging/auth-server#use-创建访问令牌的凭据