我可以使用下面的 CURL 請求透過 Firebase Messaging 發送通知。我目前正在使用 OAuth 2.0 Playground 來取得存取權杖。我需要實作一個 PHP 腳本來執行此操作。如何在 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 小時。