Отправка сообщения в C2DM продолжает возвращаться 401 - PullRequest
0 голосов
/ 12 августа 2011

Я пробовал это уже два дня, но безуспешно. Моя цель - отправить короткое сообщение на C2DM. Я использовал простое Java-приложение и curl, но он продолжает возвращать код ответа 401: (не авторизован).

Первая команда curl:

curl https://www.google.com/accounts/ClientLogin -d Email=firstname.lastname@gmail.com -d Passwd=mypasswd -d accountType=HOSTED_OR_GOOGLE -d source=Google-cURL-Example -d service=ac2dm

возвращает три длинные строки: SID, LSID и Auth.

Затем я копирую строку Auth в следующую команду (AUTH_STRING):

curl --header "Authorization: GoogleLogin auth=AUTH_STRING" "https://android.clients.google.com/c2dm/send" -d registration_id=SOME_REGISTRATION_ID -d "data.message=HelloWorld" -d collapse_key=0 -k

, но всегда возвращает код ответа 401. Registration_id копируется из клиентского приложения Android и должен быть действительным.

Что не так с этим? Любая помощь приветствуется.

1 Ответ

0 голосов
/ 15 августа 2011

Проблема решена путем использования правильного адреса электронной почты и пароля в первой команде curl.Следует использовать учетные данные электронной почты, которые использовались при подписании для ac2dm.

...