gpt4 book ai didi

javascript - 将 JSON 对象分配给来自 Google Sheets URL 的变量?

转载 作者:行者123 更新时间:2023-12-03 11:43:35 25 4
gpt4 key购买 nike

我希望能够每 24 小时从 Google 电子表格文档中提取数据并在我的 html 页面中使用这些值。

我已经设法获取我想要跟踪的单元格的 JSON url,但我不知道如何使用该 url 将此 JSON 对象放入 JavaScript 变量中。

我四处搜索并尝试使用 Jquery $.get() 和 $.getJSON() 但我似乎无法让任何东西工作。

Google 电子表格数据单元格 JSON 的 URL 为

https://spreadsheets.google.com/feeds/cells/1r56MJc7DVUVSkQ-cYdonqdSGXh5x8nRum4dIGMN89j0/1/public/values/R29C4?alt=json-in-script&callback=importGSS

我知道这可能很简单,但我对使用 JSON/Javascript 很陌生,并且一直在努力解决这个问题。

感谢您的帮助:)

最佳答案

返回的数据是 jsonp,因此您需要在 Ajax 请求中指定它。

function getData() {
return $.ajax({
url: 'https://spreadsheets.google.com/feeds/cells/1r56MJc7DVUVSkQ-cYdonqdSGXh5x8nRum4dIGMN89j0/1/public/values/R29C4?alt=json-in-script&callback=importGSS',
dataType: 'jsonp',
jsonpCallback: 'importGSS'
})
}

虽然您可以将数据分配给全局变量,但这只能让您到目前为止 - Ajax 进程是异步的,您将无法访问数据,直到过程已完成:

var obj;
getData().done(function (data) {
obj = data;
});

// console.log(obj) here will return undefined as the process
// has not yet finished

更好地获取数据并用它做一些事情:

function doSomethingWithData(data) {
console.log(data);
}

getData().done(function (data) {
doSomethingWithData(data);
});

或者更简单:

getData().done(doSomethingWithData);

关于javascript - 将 JSON 对象分配给来自 Google Sheets URL 的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26157733/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com