Я разрабатываю приложение Django, которое использует python-openid. Приложение работает на моем сервере разработки дома.
Аналогично механизму входа в stackoverflow, я бы хотел, чтобы пользователи заходили на мой сайт, используя свои учетные данные Google.
Код, который я реализовал для этого, хорошо работает в течение пары недель, а затем перестает работать. Я застрял во время процесса входа в систему на следующей странице Google: https://www.google.com/accounts/o8/ud с этим сообщением: «Запрошенная вами страница недействительна». Это случайно начнет работать снова, но терпит неудачу каждые несколько недель или около того.
Просмотр имени пользователя Yahoo работал в течение нескольких месяцев, и сегодня перестал работать со следующим сообщением: «Срок действия этой страницы истек, вернитесь на исходную страницу и повторите попытку» на этой странице: https://open.login.yahooapis.com/openid/op/auth
Вот запрос, захваченный LiveHttpHeaders для Google:
https://www.google.com/accounts/o8/ud
POST /accounts/o8/ud HTTP/1.1
Host: www.google.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.10) Gecko/2009042513 Ubuntu/8.04 (hardy) Firefox/3.0.10
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://127.0.0.1:8000/users/login/
Content-Length:907
openid.ax.if_available=ext1&openid.mode=checkid_setup&openid.ns=http://specs.openid.net/auth/2.0&openid.realm=http://127.0.0.1:8000/accounts/login/&openid.return_to=http://127.0.0.1:8000/users/login/finish/?janrain_nonce=2009-10-05T19%3A10%3A11ZtioiRm&openid.ax.count.ext1=unlimited&openid.ax.mode=fetch_request&openid.sreg.optional=email&openid.claimed_id=http://specs.openid.net/auth/2.0/identifier_select&openid.ns.sreg=http://openid.net/extensions/sreg/1.1&openid.ns.ax=http://openid.net/srv/ax/1.0&openid.identity=http://specs.openid.net/auth/2.0/identifier_select&openid.assoc_handle=AOQobUcnzec0bpeZRztjqPrr5TQUA0aPL7SIuOPOMgWxex2HRAP09AyJ&openid.ax.required=ext0&openid.ax.type.ext0=http://schema.openid.net/namePerson&openid.ax.type.ext1=http://schema.openid.net/contact/web/default
HTTP/1.x 400 Bad Request
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Я не уверен, что здесь происходит, и хотел бы помочь.