Как использовать Twitter API для проверки правильности имени пользователя / пароля? - PullRequest
3 голосов
/ 21 февраля 2010

У меня есть пользователь и пароль, и я хотел бы использовать Twitter API (я использую python-twitter), чтобы проверить, являются ли они действительными данными.

Ответы [ 2 ]

1 голос
/ 21 февраля 2010

urllib2 вызовет HTTPError, если учетные данные неверны, и появится сообщение «HTTP Error 401: Unauthorized». Вы можете использовать временный экземпляр API для выполнения авторизованного запроса (например, GetFriends ()) в блоке try / Кроме того, чтобы определить, действительны ли учетные данные.

import twitter, urllib2
checkCreds = twitter.Api(username, pass)
try:
  checkCreds.GetFriends()
except urllib2.HTTPError, status:
  if status.find('401') != -1:
    print 'Invalid username/password'

Twitter будет преднамеренно разрешать запросы с отсутствующими или неверными учетными данными для общедоступных областей, таких как GetPublicTimeline () или GetUserTimeline ().

0 голосов
/ 21 февраля 2010

Если вы взяли версию 0.7 python-twitter версии 0.7, был добавлен метод VerifyCredentials. Если возвращаемое значение равно None, то комбинация имени пользователя и пароля была неправильной.

Мне понравилось сначала использовать api.GetUser(username), чтобы проверить, предоставили ли они действительное имя пользователя, а затем использовать api.VerifyCredentials(), чтобы проверить пароль - таким образом я мог сообщить пользователю, какая часть его логина была неправильной.

Как уже упоминалось, Twitter настаивает только на входе в OAuth и, как ожидается, не одобрит существующий метод входа в систему username / passwd.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...