提问人:Luke Gruber 提问时间:10/11/2023 最后编辑:Brian Tompsett - 汤莱恩Luke Gruber 更新时间:10/11/2023 访问量:28
如何将软件 API (WhipAround) 连接到 Google 表格?
How do I connect a software API (WhipAround) to Google Sheets?
问:
我无法将 API 连接到 Google 表格。
使用此 Fetch/Request,如何使用 Apps 脚本连接到 Google 表格?
const options = {
method: 'GET',
headers: {
accept: 'application/json',
'X-API-KEY': 'MyKey'
}
};
fetch('https://api.whip-around.com/api/public/v4/work-orders?limit=20&page=1', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
我在 Google Apps Script 中尝试过这个,但它不起作用
function fetchDataFromAPI() {
var apiUrl = 'https://api.whip-around.com/api/public/v4/work-orders';
var headers = {
'Authorization': 'Bearer MyKey'
};
var options = {
'headers': headers
};
var response = UrlFetchApp.fetch(apiUrl, options);
var responseData = JSON.parse(response.getContentText());
// Now you can manipulate the API data and update your Google Sheet
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var numRows = responseData.length;
var numCols = responseData[0].length;
sheet.getRange(1, 1, numRows, numCols).setValues(responseData);
}
答:
0赞
Tanaike
10/11/2023
#1
我相信你的目标如下。
- 您想将显示的 Javascript 转换为 Google Apps 脚本。
修改要点:
如果您的 Javascript 工作正常,并且您想从 Javascript 转换为 Google Apps 脚本,我认为需要将其包含在请求标头中而不是 .
accept: 'application/json', 'X-API-KEY': 'MyKey'
'Authorization': 'Bearer MyKey'
关于您以下的回复,
这就是你的意思吗?function fetchDataFromAPI() { var apiUrl = 'https://api.whip-around.com/api/public/v4/work-orders'; var headers = { Accept: 'application/json','mykey' }; var options = { 'headers': headers };另外,这里是文档的链接:whiparound-public-api.readme.io/reference/...
- 我担心你无法正确理解我的评论。
在这种情况下,以下修改怎么样?
修改后的脚本:
function fetchDataFromAPI() {
var yourAPIkey = "###"; // Please set your API key.
var apiUrl = 'https://api.whip-around.com/api/public/v4/work-orders?limit=20&page=1';
var options = { headers: { "X-API-KEY": yourAPIkey, accept: "application/json" } };
var response = UrlFetchApp.fetch(apiUrl, options);
var responseData = response.getContentText();
console.log(responseData); // Here, you can see the response value in the log.
}
注意:
在此修改中,它假设您的 Javascript 工作正常。请注意这一点。如果您的 Javascript 无法正常工作,请再次确认您的 API 密钥。
不幸的是,从您的回复和您的问题来看,我无法理解您的输出情况。因此,在此答案中,我只修改了用于请求 API 的脚本。
评论
accept: 'application/json', 'X-API-KEY': 'MyKey'
'Authorization': 'Bearer MyKey'
UrlFetchApp.fetch
response
.then(response => console.log(response))
function fetchDataFromAPI() { var apiUrl = 'https://api.whip-around.com/api/public/v4/work-orders'; var headers = { Accept: 'application/json','mykey' }; var options = { 'headers': headers };