我很难找到我需要的信息。我想我没有在正确的地方寻找,因为这是非常基本的。无论如何。
某人在某处创建了一个 Google 表格,任何知道该链接的人都可以访问。我想检索给定单元格的值。
我希望能够在 JS 中从一个简单的网页(或 PHP 中的服务器端,但最好是 JS)执行以下操作:
AGoogleApiIHopeExists.setApiKey("<MY_API_KEY");
var value = AGoogleApiIHopeExists
.getSheet("AJEIDNNS6886SDHSKN67HBS7BA6SD555DSHD")
.getTab("MyTabInsideMySheet")
.getCell("B:17");
恐怕我认为这是可能的有点天真......
如果没有,我应该在哪里寻找更多信息?
Google Sheets API。它是一个 REST API,可用于访问和编辑 Google 表格。您不需要需要他们的客户端库(Java、.NET 等)
如果工作表是私有的,您将需要使用 OAuth 2.0 通过用户帐户获得访问权限。如果该工作表是公开的,您无需登录即可访问它。但请注意,在您可以访问该工作表之前,该工作表仍必须
已发布。
我做了一些挖掘来帮助你。尝试这个端点:
https://spreadsheets.google.com/feeds/cells/<sheetID>/default/public/full/R1C1?alt=json
R1C1
指的是第 1 行、第 1 列。您可以根据需要更改它。
default
指工作表(选项卡)ID。如果您需要与默认工作表不同的工作表,您可以使用其他 API 端点来获取适当的工作表 ID。
这是一个简单的jsfiddle,它允许您输入一些变量并查看结果值。
{'version':'0.6','reqId':'0','status':'ok','sig':'1524270715','table':{'cols':[{'id':' A','label':'','type':'string'}],'rows':[{'c':[{'v':'此处存储的 URL'}]}],'parsedNumHeaders' :0}}
let url2 = "https://docs.google.com/spreadsheets/d/<SHEET ID HERE>/gviz/tq?tqx=out:json&sheet=Data&gid=0&range=A2";
fetch(url2)
.then(res => res.text())
.then(data => {
data = data.substr(47).slice(0,-2);
console.log("data_1: \n" + data);
console.log("type_1: \n" + data.type);
return data;
})
.then(info => {
info = JSON.parse(info);
console.log("info: \n" + info);
console.log("GOT: \n" + info.table.rows[0].c[0].v);
})
.catch(error => {console(error)
});