0

我们发现 Google 电子表格 API 存在一个非常奇怪的问题。

我们正在使用 jQuery (JSONP) 来获取文档,如下所示:

var url = 'https://spreadsheets.google.com/feeds/list/0At1XiR0Vfko3dFdKcEYwTHgwWVRmSHg0bUt6ck1qbVE/od6/public/values?alt=json-in-script&callback=?'
$.getJSON(url, function(data)
{
    console.log(data);
});

完成的 URL 如下所示: https ://spreadsheets.google.com/feeds/list/0At1XiR0Vfko3dFdKcEYwTHgwWVRmSHg0bUt6ck1qbVE/od6/public/values?alt=json-in-script&callback=jQuery18307236330607638174_1373548822356&_=137354882

现在的问题。在 Chrome 中,访问上述 URL 会将您带到 Google 帐户登录页面,而不是为您提供 JSON API 响应。

这当然会破坏页面上的 javascript 代码,因为返回的数据是 HTML 而不是预期的 JSON。

Chrome 错误控制台显示:

未捕获的 SyntaxError:意外的令牌 <

我不知道为什么会发生这种情况,以及为什么它只影响 Chrome。欢迎任何解决方法!

编辑:经过进一步测试,这似乎是在 Chrome 中安装 Google Docs 扩展时发生的。禁用 Google Docs 扩展解决了这个问题。 https://chrome.google.com/webstore/detail/google-docs/aohghmighlieiainnegkcijnfilokake

4

1 回答 1

0

打开 Safari 并删除所有 cookie 为我解决了类似的问题。我试图在 Adob​​e AIR 应用程序中下载 JSON,并返回 HTML - Google Docs 登录页面。cookie被删除后,问题就解决了。

于 2013-07-29T22:36:04.710 回答