Google OpenID & OAuth - Как получить токены доступа - PullRequest
1 голос
/ 08 мая 2011

У меня есть веб-сайт, с которого я хочу, чтобы пользователи связывали свою учетную запись GMail, позже я хочу получить доступ к учетной записи GMail через OAuth.Для этого я использую OpenID + OAuth от Google (гибридный протокол).

Когда я следую вышеупомянутой документации, я получаю следующее -

openid.assoc_handle AOQobUfg8E9PvTYX1huZPleVGoSvky57TxLHMzI-Lxd87cDNwLyrutSm
openid.claimed_id   https://www.google.com/accounts/o8/id?id=AItOawlus8fqLMQGgfCCM6pDZGpuNjwQqqYMs4o
openid.ext1.mode    fetch_response
openid.ext1.type.email  http://axschema.org/contact/email
openid.ext1.value.email forward@gmail.com
**openid.ext2.request_token   4/C-VqYG9lRtJBKM9G15I-tFk58rOS**
openid.ext2.scope   https://mail.google.com/
openid.identity https://www.google.com/accounts/o8/id?id=AItOawlus8fqLMQGgfCCM6pDZGpuNjwQqqYMs4o
openid.mode id_res
openid.ns   http://specs.openid.net/auth/2.0
openid.ns.ext1  http://openid.net/srv/ax/1.0
openid.ns.ext2  http://specs.openid.net/extensions/oauth/1.0
openid.op_endpoint  https://www.google.com/accounts/o8/ud
openid.response_nonce   2011-05-07T18:38:37ZOEVDbKdW6d2g9A
openid.return_to    https://mysite.com/gmail_redir/
openid.sig  niD5l9V7cG+LOE2zYjJ6rS0Cdwc=
openid.signed   op_endpoint,claimed_id,identity,return_to,response_nonce,assoc_handle,ns.ext1,ns.ext2,ext1.mode,ext1.type.email,ext1.value.email,ext2.scope,ext2.request_token

Я получаю openid.ext2.request_token , который должен позволять мне сканироватьпользователи GMail в соотв.через OAuth.Как это работает?Мне не нужны токены доступа (т.е. oauth_access_secret и oauth_access_token) ??

Нужно ли делать еще запросы?Кто-нибудь знает, как действовать после этого?

1 Ответ

2 голосов
/ 22 ноября 2011

Получив токен, вы должны

  1. авторизовать его, а затем
  2. обменять его на токен доступа

Взгляните наhttp://code.google.com/apis/accounts/docs/OAuth.html#WorkingOauth

или https://developers.google.com/accounts/docs/OAuth2 (для OAuth v2)

...