Ich kann Benachrichtigungen über Firebase Messaging senden, indem ich die CURL-Anfrage unten verwende. Ich verwende derzeit den OAuth 2.0 Playground, um Zugriffstokens zu erhalten. Dazu muss ich ein PHP-Skript implementieren. Wie erstelle ich ein Zugriffstoken programmgesteuert in PHP?
curl -X POST -k -H 'Authorization: Bearer access_token_goes_here' -H 'Content-Type: application/json' -i 'https://fcm.googleapis.com/v1/projects/projectId/messages:send' --data '{ "message":{ "topic" : "newTopic", "notification" : { "body" : "This is a Firebase Cloud Messaging Topic Message!", "title" : "FCM Message" } } }
我找到了很多解决方案,但它们都需要大量的库和依赖项。
我构建自己的解决方案,没有额外的依赖项。这是用于获取 OAuth2 令牌的 api:https://developers. google.com/identity/protocols/oauth2/service-account#httprest
第一步是创建 JWT(Json Web 令牌)。使用该 JWT,可以请求不记名令牌。
$response
包含不记名令牌。您应该存储此令牌以供其他请求使用,并在其即将过期时请求新的不记名令牌。该不记名令牌的最长生命周期为 1 小时。