"ошибка": "MismatchSendedId" при попытке отправить уведомление Web Push
Я следую этому руководству, чтобы узнать о реализации веб-push. Я следовал этому руководству, пока не столкнулся с проблемой при использовании curl для отправки уведомления:
curl --header "Authorization: key=<PUBLIC_API_KEY>" --header "Content-Type: application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[\"<SUBSCRIPTION_ID>\"]}"
Я изменил ключ API и идентификатор подписки с помощью своего ключа Firebase Cloud Messaging и идентификатора подписки, сгенерированного, когда уведомления принимаются в браузере.
Тем не менее я получаю эту ошибку при выполнении curl:
{ "Multicast_id":8346257587601342490,"успех":0,"провал":1,"canonical_ids":0,"Результаты":[{"ошибка":"MismatchSenderId"}]}
Я обнаружил эту ошибку, связанную с push-уведомлениями Android, но не с push-уведомлениями в Интернете, поэтому другие ответы не помогли с моей проблемой.
Кто-нибудь сталкивался с этой проблемой? Что мне не хватает?
2 ответа
Я тоже испытывал то же самое. Даже после того, как десяток раз перепроверяли, что манифест был правильно записан и установлен и что API_KEY и registration_ids верны. Но теперь я заметил, что проблема была в том, что я не копировал всю URL-ссылку. Пример, если URL-адрес вашей конечной точки:
Тогда идентификатор subctionID будет "c_hMYQ0IJEg:APA91bHugFROB5EKLlwFKPjc7lRs_YZ7nBV655oftqdKPtzsmoz149d1BLVntgMpRnLHGqTVn6W7n7je4SoezFxfb".
Я использовал только последнюю часть, как в "APA91bHugFROB5EKLlwFKPjc7lRs_YZ7nBV655oftqdKPtzsmoz149d1BLVntgMpRnLHGqTVn6W7n7je4SoezFhfbUMdwxAot, почему я получил ошибки, и я догадался,
Это означает, что установка сервисного работника связана с отправителем GCM, который отличается от отправителя GCM, который сгенерировал ключ API.
Из устранения неполадок в Pushpad:
- Убедитесь, что вы создали и связали
manifest.json
- Проверьте, правильно ли вы ввели
gcm_sender_id
вmanifest.json
- Проверьте, правильно ли вы ввели
GCM API key
Если все правильно, вы также можете попробовать отписаться и подписаться после того, как вы установили правильный gcm_sender_id
,