J'essaie de tester les API de messagerie Firebase Cloud car toutes les fonctionnalités ne sont pas disponibles à partir de la console (notamment la personnalisation des notifications lorsque l'application est en arrière-plan). Mais pour certaines raisons, je ne peux pas le faire fonctionner et il affiche toujours une erreur 401. J'ai étudié les raisons de cela et l'ai essayé après avoir régénéré une nouvelle clé de serveur, mais l'erreur reste constante. Étonnamment, lorsque j'ai généré une nouvelle clé de serveur, celle-ci n'est pas reflétée dans la console Firebase et indique que la clé de serveur est vide. En outre, j'ai essayé d'ajouter mon adresse IP aux adresses IP de la liste blanche du serveur, mais toujours pas de chance. J'ai joint une capture d'écran d'une demande que j'ai faite avec Postman (je substitue la clé de serveur à la place de serverKey .
Je suis coincé là-dessus pendant quelques heures et j'apprécierais vraiment une aide .
J'ai remarqué sur votre capture d'écran que vous utilisiez "key: serverKey". Pourriez-vous essayer d'utiliser "key = serverKey" à la place?
De plus, vous n'avez pas besoin d'avoir "POST fcm.googleapus.com/fcm/send"; ce n'est pas correct json et expliquerait l'erreur que vous voyez. L'URL de la demande étant déjà définie ailleurs, supprimez-la de la charge utile.
Je ne sais pas si quelqu'un utilise la [clé API Web] en tant que [YOUR_SERVER_KEY] pour le test POSTMAN et continue à obtenir le message "Erreur 401". [Clé API Web] n'est pas [YOUR_SERVER_KEY].
Vous devriez aller sur votre console Firebase et vérifier ceci:
pour obtenir la clé de serveur correcte.
J'espère que ça vous aidera.
J'ai rencontré le même problème.
le problème était que j'utilisais la clé de serveur héritée. quand j'ai utilisé la nouvelle version de la clé du serveur, le problème a été résolu.
dans les paramètres de votre console firebase goto -> cloud cloud
utilisez ensuite la nouvelle clé de serveur. c'est plus long que l'ancienne clé de version.
allez à https://console.firebase.google.com/u/0/project/ [nom du projet]/settings/cloudmessaging /
vous pouvez utiliser une clé de serveur ou une clé de serveur héritée
Moi aussi, je suis confronté au même problème ... J'utilise curl en php pour poster et cela ne fonctionne que si j'ai des fichiers php stockés sur mon serveur LocalHost. Lorsque j'essaie d'utiliser l'accès aux fichiers via un hébergement gratuit en ligne, le message Unautorized 401 est indiqué.
Donc, je vous suggère, si vous le pouvez, d’utiliser l’hôte local.
J'ai le même problème au code côté serveur (C #).
Vous avez essentiellement utilisé une mauvaise clé de serveur (ou clé API) pour le code côté service.
Suivre ci-dessous Link over stackoverflow posté par moi (Utile pour trouver une clé de serveur (ou une clé API))
Notification Push FCM (Firebase Cloud Messaging) avec Asp.Net