我是Google Apps Scripts的新手,我一直在尝试对URL进行简单的Get调用。 我从浏览器拨打此电话:https://accounting.sageone.co.za/api/1.1.1/Supplier/Get?apikey={4CFEEFE1-CE04-425F-82C3-DCB179C817D5}&companyid=164740,并获得我正在寻找的响应。我现在尝试使用以下代码从Google Apps Scripts进行调用:
function myFunction() {
var url = 'https://accounting.sageone.co.za/api/1.1.1/Supplier/Get?apikey={4CFEEFE1-CE04-425F-82C3-DCB179C817D5}&companyid=164740
var response = UrlFetchApp.fetch(url);
Logger.log(response);
}'
我得到一个回复说"消息详细信息无效参数:https://accounting.sageone.co.za/api/1.1.1/Supplier/Get?apikey={4CFEEFE1-CE04-425F-82C3-DCB179C817D5}&companyid=164740(第 4 行,文件"代码")'
我尝试了一大堆排列,但没有运气......
使用 UrlFetchApp 时,您需要将网址参数作为请求参数的一部分输入,而不是在网址本身中输入。对于GET
请求,这些参数直接作为参数的一部分,对于POST
请求,参数将是有效负载对象的一部分。参考文档
这是一个修改后的函数:
function myFunction() {
var url = 'https://accounting.sageone.co.za/api/1.1.1/Supplier/Get'
var params = {
"method": 'GET',
"apikey": "{4CFEEFE1-CE04-425F-82C3-DCB179C817D5}",
"companyid": "164740"
}
var response = UrlFetchApp.fetch(url, params);
Logger.log(response)
}
注意:这将更正您的方法,但是,服务器仍需要进一步的身份验证。如果您遇到问题,请同时询问特定于该问题的其他问题。