将jQuery与JSON和Google Spreadsheets Data API结合使用

时间:2011-10-14 21:44:03

标签: jquery json google-spreadsheet-api

我正在尝试使用Google Spreadsheets Data API获取JSON字符串。我试图开始轻松,只需在成功加载JSON字符串后弹出一个警告框。

$(function(){
  var json_uri = "https://spreadsheets.google.com/feeds/list/0AvC4NUSdTIgddFJnUFRkcnI0QkJDLVg2eklZd0FZVVE/od6/public/values?alt=json";
  $.ajax({
    type: "GET",
    url: json_uri,
    success: function(data){
      alert("success");
    }
  });
});

但我从未见过警报框。发生了什么?我是JSON和Spreadsheets API的新手,所以希望这只是我忽略的一些简单的事情。

Google的示例页面:http://code.google.com/apis/gdata/samples/spreadsheet_sample.html

我的jsbin示例页面:http://jsbin.com/otuxiv/11

3 个答案:

答案 0 :(得分:1)

我为ajax调用dataType设置了一个dataType:'jsonp',并尝试更改

var json_uri = "https://spreadsheets.google.com/feeds/list/0AvC4NUSdTIgddFJnUFRkcnI0QkJDLVg2eklZd0FZVVE/od6/public/values?alt=json";

var json_uri = "//spreadsheets.google.com/feeds/list/0AvC4NUSdTIgddFJnUFRkcnI0QkJDLVg2eklZd0FZVVE/od6/public/values?alt=json";

没有时间测试,但可能会让你超过IE错误。

答案 1 :(得分:0)

你的第一个例子在Firefox 15.01中适用于我

如果您将数据移动到像jsondata.com这样的服务,那么解析这个巨大的JSON对象会省去很多麻烦。

各方面,Google Spreadsheets API都很麻烦。

答案 2 :(得分:0)

此处另一个可能的解决方案是使用此https://gist.github.com/ronaldsmartin/47f5239ab1834c47088e来包装现有的电子表格。

idsheet html参数添加到以下网址中。

  

https://script.google.com/macros/s/AKfycbzGvKKUIaqsMuCj7-A2YRhR-f7GZjl4kSxSN1YyLkS01_CfiyE/exec

例如:您的id是您的工作表ID

0AvC4NUSdTIgddFJnUFRkcnI0QkJDLVg2eklZd0FZVVE

和您的工作表

Sheet1

在您的情况下,您实际上可以在这里看到您的数据(它实际上正在工作)

https://script.google.com/macros/s/AKfycbzGvKKUIaqsMuCj7-A2YRhR-f7GZjl4kSxSN1YyLkS01_CfiyE/exec?id=0AvC4NUSdTIgddFJnUFRkcnI0QkJDLVg2eklZd0FZVVE&sheet=Sheet1

为安全起见,您应该将上面的github gist中的代码sheetAsJson.gs部署为您自己的Google云端硬盘。