web-dev-qa-db-fra.com

Firebase 401 erreur non autorisée FCM

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 . enter image description here

63
gaurav jain

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.

32
Arthur Thompson

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.

214
S1ngoooor

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.

15
Karim

allez à https://console.firebase.google.com/u/0/project/ [nom du projet]/settings/cloudmessaging /

Project credentials

vous pouvez utiliser une clé de serveur ou une clé de serveur héritée

11
Omar Makled

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.

2
Sugam Mankad

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

0
Nilesh Panchal