FCM HTTP V1如何获取Bearer Token?Delphi后端推送技术问询
FCM HTTP V1 与 Delphi 后端相关问题解答
1. HTTP API中是否有可获取Bearer Token的端点?
有,你可以通过Google的OAuth 2.0令牌端点获取:
- 发送
POST请求到https://oauth2.googleapis.com/token - 请求参数需包含:
grant_type=urn:ietf:params:oauth:grant-type:jwt-bearerassertion:用你的FCM服务账号密钥生成的JWT断言(JWT中需指定aud为该令牌端点URL,scope为https://www.googleapis.com/auth/firebase.messaging)
- 请求成功后会返回包含
access_token的JSON响应,这个就是所需的Bearer Token,有效期通常为3600秒,过期后重新生成即可。
2. 是否能无需该Token通过API HTTP V1发送推送?
不行,FCM HTTP V1接口强制要求使用Bearer Token做身份验证,没有绕过Token的合法调用方式。
如果不想处理Token,只能考虑使用即将被弃用的FCM Legacy HTTP API,但Google已明确不再对该版本做功能更新,后续可能停止支持,不建议长期依赖。
3. Delphi是否可使用FCM Admin SDK?
Google没有官方的Delphi版本FCM Admin SDK,但可以通过以下方式实现类似功能:
- 自行封装HTTP请求:按前面的流程先获取Bearer Token,再构造符合V1接口要求的JSON消息体,用Delphi自带的
THTTPClient组件发送POST请求到FCM消息端点,配合第三方JWT库生成所需断言即可。 - 使用第三方开源库:社区有一些Delphi的Firebase相关开源组件,封装了OAuth认证和FCM消息发送逻辑,可以直接调用。
内容的提问来源于stack exchange,提问作者JRG
相关产品推荐
相关产品推荐

