Open4
FCMのPush通知テスト
FCMを介したPush通知のテストはOAuth2.0PlayGroundを使うのが良い。
FCM HTTP v1 APIだとアクセストークンをヘッダに入れてリクエスト送らないといけなく、そのアクセストークンを取得するのがちょっと面倒
OAuth2.0PlayGroundを使うとアクセストークンの取得とかせずにリクエスト送れる。
送信までの手続きはブラウザで完結する
このやり方でアクセストークン取れた場合、Postmanからリクエスト送れる。
その時のコマンドは以下の通り
curl --location 'https://fcm.googleapis.com/v1/projects/fastdoctor-doctor-app/messages:send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <アクセストークン>' \
--data '{
"message":{
"notification": {"title": "test", "body":"body"},
"token": <FCMトークン>,
"apns": {
"headers": {
"apns-priority": "10"
},
"payload": {
"aps": {
"sound": "default"
}
}
}
}
}'
FCMからiOSにPushを送る場合、FCMにAPNs証明書かAPNsキーを登録しないといけない。
登録直後はUnauthorized Error → Internal Errorが出て送信できなかったが、登録してから12時間後再度やってみたらうまく行った。
ちなみにiOSエミュレータに向けてPushは飛ばせないので注意
一方送信できるよとの記事も見つけてこれを試してみたがうまくいかなかった(気がする)