开始与谷歌电子表格的工作(需要获得/把一些数据存在)谷歌电子表格授权问题
我有一个ASP.NET Web的应用程序(MVC),该认证使用谷歌的OAuth2用户。 也就是说,用户使用Google帐户登录并授权该应用程序。应用程序成为回调中的一个标记(如“ya29.bla_bla_bla”)。据我所知,现在应该可以使用这个令牌来访问电子表格。
OAuth2请求包含范围“https://spreadsheets.google.com/feeds”。
现在我想要列出使用谷歌的GData Spreadsheets library
var ss = new SpreadsheetsService("xxx");
ss.SetAuthenticationToken(token);
var q = new SpreadsheetQuery();
var result = ss.Query(q);
张(我想最简单的事情),但是这将导致401:拒绝访问,凭证无效:(
全面启动。使用Fiddler调查以下请求被发送:
GET https: //spreadsheets.google.com/feeds/spreadsheets/private/full
Authorization: GoogleLogin auth=ya29.bla_bla_bla
这导致401,访问被拒绝, “无效令牌”
但如果我这样做查询“手动”,并授权使用“承载...”而不是“的GoogleLogin AUTH = ...”,像这样:
GET https: //spreadsheets.google.com/feeds/spreadsheets/private/full
Authorization: Bearer ya29.bla_bla_bla
然后,它的工作原理,并返回预期的工作表清单。
我在做什么错?也许令牌不是我需要的那个?那我需要哪一个? 或者我应该指定一个版本/范围/无论什么地方? “Authorization:Bearer ...”和“Authorization:GoogleLogin auth = ...”之间可能有什么区别?
你的“手”的版本是正确的。它看起来像是一个问题,您正在使用的库尚未更新到OAuth 2。 – pinoyyid 2014-11-07 19:33:16