通过Google Spreadsheet API导入JSON

时间:2013-03-19 13:54:41

标签: javascript oauth-2.0 google-spreadsheet-api google-oauth

我只想将电子表格拉入应用/网站。理想情况下,我希望它是私密的,但首先我要尝试使用电子表格引入数据,并向公众提供#34;和"发布到网络"。

$.ajax({
   type: 'GET',
   url: 'http://spreadsheets.google.com/feeds/cells/' + spreadsheetKey + '/od6/public/full?alt=json',
   success: function(data){
     alert("success");
   } 
 });

这总是导致:

"您没有对电子表格的查看权限。确保您已经过适当的身份验证。"

我没试过?alt = json,用' list'而不是'细胞'以及'值'而不是“完全”#39;什么都行不通。

此外,有没有办法将访问令牌传递给此调用?我通过Google登录进行身份验证并允许使用Spreadsheet API范围。我试过& accessToken = xxx和& access_token = xxx。文档没有Javascript的任何内容。

1 个答案:

答案 0 :(得分:2)

对于Javascript访问私人电子表格,您需要在此处使用Javascript库:https://code.google.com/p/google-api-javascript-client/wiki/Authentication这样您就可以使用OAuth2.0来访问私人Google电子表格。有关完整说明,请参阅Google Spreadsheets API with OAuth 2.0 using Javascript下的答案。

对于访问令牌,语法为: &access_token=xxx Javascript的相关详细信息位于Google Spreadsheet API中的“协议”标题下,但我找不到它。

要获得JSON,请执行以下操作:

var url = 'https://spreadsheets.google.com/feeds/list/' + urlLocation + '/od6/private/full?alt=json-in-script&access_token=' + token + '&callback=?';
$.getJSON(url, function(data) {
    //do stuff with data here
});