我创建了一个包含五列的Google电子表格;
用户填写前三列中的值后,必须调用第三方API并填写第四和第五列中的值(响应)。
是否可以在Google电子表格中编写代码以进行API调用? 是否可以在Google电子表格中调用并获取外部API的响应?
答案 0 :(得分:8)
有一种方法可以进行API调用并将结果放到电子表格中 - 我知道这样做的唯一方法是创建/打开目标电子表格,转到工具,然后编写脚本编辑器,并将其用作绑定脚本:
nullException
它需要一点接口工作但功能!它从API调用中获取信息并将其放入电子表格中。
答案 1 :(得分:1)
有一些 Google 表格插件可以帮助您使用 API,而无需编写自定义代码。
其中之一是 Powersheets,它提供特殊公式来调用工作表中的 API。
Powersheets 的 API
公式接受 API GET 端点的 url 作为第一个参数。
= API( "https://api.spacexdata.com/v4/company" )
This 是最终结果的样子。
免责声明:我是 Powersheets 的作者。
答案 2 :(得分:0)
我最近遇到了相同的要求,即读取工作表的行并在请求中发送数据并记录响应。我想我会分享谷歌搜索后的作品...
function testing_this() {
var data = SpreadsheetApp.getActiveSheet().getDataRange().getValues();
for (row in data) {
Logger.log(data[row]);
var row = data[row]
var options = {
'method': 'post',
'payload': { email:row[1]}
};
// sending to API. for example:
UrlFetchApp.fetch('https://your-rest-api-url/v1/customers/', options);
}
}
如果您想获取表格中的数据,您应该使用以下功能:
var response = UrlFetchApp.getRequest("http://your-api-url/");
for(data in response) {
var respData = response[data];
// do whatever u want to do with this data...
}
希望对所有面临类似要求的人都有用。
如果你想分叉/拉动,我已经在github上发布了这个脚本......
https://github.com/joshiparthin/gsheetScriptExperiments/blob/master/readAndSendToApi.js
干杯,
PARTH