Я работаю над приложением C2DM, используя appengine на Python. После нескольких часов размышлений о том, почему мое «отправить сообщение» выдало мне ошибку 401, я обнаружил, что мой токен аутентификации был неверным. Я просмотрел несколько примеров и заметил, что большинство людей получают токен, передавая адрес электронной почты и пароль в качестве примера параметров запроса:
username = self.request.get('username')
password = self.request.get('password')
values = {'accountType' : 'HOSTED',
'Email' : username,
'Passwd' : password,
'source' : 'shiprack-brain-1',
'service' : 'ac2dm'}
data = urllib.urlencode(values)
request = urllib2.Request('https://www.google.com/accounts/
ClientLogin', data)
response = urllib2.urlopen(request)
Есть ли способ получить токен, необходимый для обмена сообщениями C2DM, не передавая пароль Gmail?