Есть ли способ одновременно аутентифицировать Gmail Oauth и Google Contacts API AuthSub? - PullRequest
0 голосов
/ 19 августа 2010

Я могу получить доступ к учетной записи gmail пользователя с помощью oauth, а также получить доступ к контактам пользователей и их группам контактов через API контактов Google (который использует AuthSub).Для моего приложения мне нужны оба из них, есть ли способ, которым я могу аутентифицировать оба сразу, чтобы я не требовал, чтобы пользователи проходили два отдельных сеанса аутентификации?доступ к группам контактов пользователя только с помощью Gmail oAuth?

Ответы [ 3 ]

1 голос
/ 29 августа 2010

Я не думаю, что это возможно, потому что кажется, что authsub - это другой процесс, и его нужно обрабатывать отдельно. Тем не менее, я рекомендую пройти проверку подлинности сразу, используя oauth, указав параметр «scope» в запросе, включающий как URL-адрес контактов, так и адрес gmail.

0 голосов
/ 20 октября 2013

Вот быстрый пример Python (вы не написали, какой язык вы используете), надеюсь, это поможет!

def GetAuthSubUrl(next):
    oauthURL = urlparse(next)
    oauthURL = oauthURL.scheme + '://' + oauthURL.netloc + oauthURL.path + "oauth"
    scope = ['https://picasaweb.google.com/data/', 'https://www.google.com/m8/feeds/']
    secure = False
    session = True
    gd_client = gdata.photos.service.PhotosService()
    return gd_client.GenerateAuthSubURL(oauthURL, scope, secure, session);
0 голосов
/ 30 января 2012

У меня похожий вопрос - извините, что поднял старую ветку.

@ benjaminlotan - вы сказали: «Тем не менее, я рекомендую проходить проверку подлинности сразу, используя oauth, указав параметр« scope »в запросе, включающий как URL-адрес контактов, так и URL-адрес gmail».

Как именно это можно сделать?

Текущий код:

// Prepare the OAuth extension
string scope = GoogleConsumer.GetScopeUri(GoogleConsumer.Applications.Contacts);
Global.GoogleWebConsumer.AttachAuthorizationRequest(authReq, scope);

Вы можете указать только одну область, и я не могу найти способ объединить URI, чтобы я также мог добавить GoogleConsumer.Applications.Gmail в область.

...