【发布时间】:2020-12-19 10:54:12
【问题描述】:
我试图发出 GET 请求,但根据 API 的文档,它需要额外的参数才能让我访问数据。我搜索了如何使用UrlFetch 发送params,我发现documentation 主要是关于在POST 中发送参数而不是GET 请求。
我已经在UrlFetch身份验证请求中发送Headers,但我想发送额外的参数。
那么有没有简单的方法可以做到这一点?
以下是我正在做的和想要做的示例。
我的代码:
const someService = authorize();
let response = UrlFetchApp.fetch('https://www.webSite.com/api/teams.json', {
headers: {
// Sending access token in the request
Authorization: 'Bearer ' + someService.getAccessToken()
}
});
我想做的事
const someService = authorize();
let response = UrlFetchApp.fetch('https://www.webSite.com/api/teams.json', {
headers: {
Authorization: 'Bearer ' + someService.getAccessToken()
},
parameters:{
'teamId': 1234
}
});
// URL should be like that: https://www.webSite.com/api/teams.json?access_token=1234abc&teamId=1234
【问题讨论】:
-
您应该使用
POST还是GET取决于您是要从网站检索数据还是将数据上传到网站。正确的身份验证方式很大程度上取决于特定的 API。看看here。使用muteHttpExceptions: true探索您遇到的错误。 -
这能回答你的问题吗? stackoverflow.com/a/56216818
标签: google-apps-script google-sheets google-sheets-api spreadsheet