我可以使用oauth訪問用戶gmail帳戶,並且我可以通過Google聯繫人API(使用AuthSub)訪問用戶聯繫人及其聯繫人組。對於我的應用程序,我需要這兩種方法,是否有一種方法可以一次進行身份驗證,以便我不需要用戶通過兩個單獨的身份驗證會話?有沒有辦法同時驗證Gmail Oauth和Google Contacts API AuthSub?
或者有沒有辦法讓我單獨使用Gmail oAuth訪問用戶的聯繫人組?
我可以使用oauth訪問用戶gmail帳戶,並且我可以通過Google聯繫人API(使用AuthSub)訪問用戶聯繫人及其聯繫人組。對於我的應用程序,我需要這兩種方法,是否有一種方法可以一次進行身份驗證,以便我不需要用戶通過兩個單獨的身份驗證會話?有沒有辦法同時驗證Gmail Oauth和Google Contacts API AuthSub?
或者有沒有辦法讓我單獨使用Gmail oAuth訪問用戶的聯繫人組?
我不認爲它是可能的,因爲它看起來像authsub是一個不同的過程,需要分開處理。不過,我建議通過指定請求的「範圍」參數來同時包含聯繫人網址和Gmail郵件,從而同時使用oauth進行身份驗證。
我有一個類似的問題 - 抱歉提出一箇舊的線程。
@benjaminlotan - 你說過「但是,我建議通過指定請求的」範圍「參數來同時包含聯繫人網址和Gmail郵箱,以同時使用oauth進行身份驗證。
究竟是如何做到這一點?
當前的代碼:
// Prepare the OAuth extension
string scope = GoogleConsumer.GetScopeUri(GoogleConsumer.Applications.Contacts);
Global.GoogleWebConsumer.AttachAuthorizationRequest(authReq, scope);
只能指定一個範圍,我似乎無法找到一種方法來串聯的URI,這樣我還可以添加GoogleConsumer.Applications.Gmail到範圍。
這是一個快速的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);
對不起,想通了,他們只是被一個空間連接起來。 – PaulJ 2012-01-30 19:41:40