J'ai vu beaucoup de questions similaires mais aucune bonne réponse malgré le fait que certaines d'entre elles aient été acceptées. Je me suis inscrit pour C2DM. J'ai reçu un email de confirmation. Ensuite, j'ai écrit une application simple pour vous inscrire à C2DM. Je reçois l'identifiant (essayé sur l'émulateur et sur le vrai périphérique). Puis j'ai obtenu le jeton auth (avec curl) pour mon email que j'ai utilisé pour l'enregistrement de C2DM (le même email que j'utilise dans l'application pour acquérir l'identifiant).
Quand j'essaie de faire le push (aussi avec curl), j'obtiens une erreur 401 (comme le jeton d'authentification est faux). Je lis beaucoup de tutoriels et je manque d'idées.c2dm Erreur 401 lors de l'envoi de messages après avoir reçu un identifiant et un jeton d'authentification
Répondre
Permettez-moi de l'essayer (avec boucle seulement):
Au début, nous sollicitons le jeton auth:
curl.exe -v -k https://www.google.com/accounts/ClientLogin -d [email protected] -d Passwd=secret -d accountType=GOOGLE -d source=your.registered.domain -d service=ac2dm
En conséquence votre recevez le jeton auth:
< HTTP/1.1 200 OK
SID=XXX
LSID=XXX
Auth=XXX
* Connection #0 to host www.google.com left intact
* Closing connection #0
* SSLv3, TLS alert, Client hello (1):
Veuillez noter que la réponse Auth est dans le résultat avec une première lettre majuscule: "Auth = XX X"!
Maintenant, nous utilisons le résultat de la requête suivante, mais avec la première lettre minuscule:
curl.exe -v -k --header "Authorization: GoogleLogin auth=XXX" https://android.apis.google.com/c2dm/send -d "registration_id=XXX" -d "data=helloooo" -d collapse_key=Z
Et cela fonctionne! Mais vous obtenez une erreur 401, si vous utilisez l'auth comme dans la première réponse (A majuscule dans « Auth »):
curl.exe" -v -k --header "Authorization: GoogleLogin Auth=XXX" https://android.apis.google.com/c2dm/send -d "registration_id=XXX" -d "data=helloooo" -d collapse_key=Z
Ainsi, le « auth » de la demande 2 est sensible à la casse. Je pense que c'est un piège dans lequel 50% des utilisateurs interviennent. J'espère que cela pourra aider.
Peut-être que c'est le problème? paramètre
http://groups.google.com/group/vogella/browse_thread/thread/95865344e6d2c734
Basucally, l ' « émetteur » que vous spécifions sur Teh appareil Android doit être la même adresse e-mail qui est registred comme l'expéditeur (côté serveur).
Non, le problème se situe entre l'expéditeur (côté serveur) et le serveur Google C2DM. Ce n'est pas lié à l'appareil. – Kamchatka
- 1. Android 401 pour c2dm
- 2. Utilisation C2DM obtenir 401 problème?
- 3. Envoyer un message C2DM
- 4. Comment obtenir un jeton d'authentification C2DM?
- 5. Android C2DM Enregistrement de l'appareil donnant une erreur 401
- 6. un message Android C2DM pas reçu
- 7. [PHP] Erreur 401 Jeton non valide lors de l'utilisation du jeton d'accès google api oauth
- 8. UITableViewController est vide après avoir reçu un avertissement de mémoire
- 9. Avoir un identifiant de connexion et un PersonID dans SQL
- 10. Comment réveiller un thread après avoir reçu 2 paquets
- 11. IE9 fakes 304 après avoir reçu ETag
- 12. 401 Erreur lors de la tentative d'obtention du jeton de demande
- 13. C2DM SERVICE_NOT_AVAILABLE Erreur lors de l'enregistrement
- 14. Android C2DM AUTHENTICATION_FAILED erreur lors de l'inscription
- 15. ALAssetsLibrary - se bloque après avoir reçu ALAssetsLibraryChangedNotification
- 16. twitter jsOAuth chercher jeton de requête renvoie 401 erreur
- 17. jQuery - Animer un objet qui a reçu un identifiant aléatoire
- 18. Le jeton de périphérique n'a pas reçu
- 19. C2DM - problèmes lors de l'utilisation de la nouvelle authentification AuthToken après avoir obtenu la mise à jour-client-Auth
- 20. Comment obtenir un identifiant de compte après avoir créé un abonnement avec Stripe?
- 21. Servir un PDF uniquement après avoir validé le jeton
- 22. Qt - dessin après avoir reçu le signal
- 23. Comment authentifier l'utilisateur Facebook après avoir reçu response.status === 'connected'?
- 24. erreur: identifiant attendu ou « (» avant « { » jeton
- 25. Obtenir 403 erreur interdite même après avoir fourni CSRF jeton
- 26. SoundCloud retour erreur 401
- 27. API Google Contacts - Après avoir obtenu le jeton d'accès (oauth)
- 28. Foursquare OAuth2 erreur 401
- 29. Jeton inconnu reçu de SQL Server
- 30. Implémentation de C2DM Code PHP
Chose étrange, quand j'ai essayé d'obtenir un jeton d'authentification pour mon email qui n'a JAMAIS été enregistré pour c2dm, j'ai aussi un jeton d'authentification. Donc, je pense que mon jeton d'authentification utilisé pour envoyer des messages doit être faux. – DixieFlatline
J'ai aussi le même problème. L'application Android s'enregistre avec C2DM puis envoie un jeton d'utilisateur au serveur Web, mon serveur Web obtient un jeton d'authentification de C2DM puis envoie une notification push à l'application enregistrée et tout ce que j'obtiens est une erreur 401. Peut-être qu'il y a un problème avec le service C2DM. Peut-être pas très fiable? – jamesc