为什么我在 Google Apps 脚本中从 UrlFetchApp 收到空响应?
Why am I getting an empty response back from UrlFetchApp in Google Apps Script?
我正在尝试使用 UrlFetchApp 从 Google Apps 脚本向外部 API 发出 GET 请求。当我使用 Postman 或 curl 发出此请求时,我得到了预期的响应。但是,当我用 UrlFetchApp
尝试时,我得到一个空响应 {}
。
我已尝试使用 Basic Auth 和 OAuth 2,并按照 here.
中所述在清单中明确设置 oauthScopes
属性
我已经与 API 团队确认,当我到达终点时,他们确实发回了完整的回复,但我收到的只是 {}
。我的问题似乎与 this Whosebug question 类似,但未得到解答。
var headers = {
"X-Client-Key": "KEY",
"Authorization": "Bearer TOKEN"
};
var options = {
method: "get",
headers: headers,
}
var response = UrlFetchApp.fetch(ENDPOINT, options);
console.log(JSON.stringify(response)); // returns {}
不要相信你在日志中看到的内容。 UrlFetchApp
服务的 fetch
方法总是 returns HTTPResponse
的一个实例,它首先是一个对象。这就是日志向您显示的内容(我假设您正在记录 response
,因为这是我知道显示 {}
的唯一上下文)。
要从响应中提取有用的信息,请使用 HTTPResponse
实例上公开的适当方法,例如 getResponseCode
or getContentText
.
我正在尝试使用 UrlFetchApp 从 Google Apps 脚本向外部 API 发出 GET 请求。当我使用 Postman 或 curl 发出此请求时,我得到了预期的响应。但是,当我用 UrlFetchApp
尝试时,我得到一个空响应 {}
。
我已尝试使用 Basic Auth 和 OAuth 2,并按照 here.
中所述在清单中明确设置oauthScopes
属性
我已经与 API 团队确认,当我到达终点时,他们确实发回了完整的回复,但我收到的只是 {}
。我的问题似乎与 this Whosebug question 类似,但未得到解答。
var headers = {
"X-Client-Key": "KEY",
"Authorization": "Bearer TOKEN"
};
var options = {
method: "get",
headers: headers,
}
var response = UrlFetchApp.fetch(ENDPOINT, options);
console.log(JSON.stringify(response)); // returns {}
不要相信你在日志中看到的内容。 UrlFetchApp
服务的 fetch
方法总是 returns HTTPResponse
的一个实例,它首先是一个对象。这就是日志向您显示的内容(我假设您正在记录 response
,因为这是我知道显示 {}
的唯一上下文)。
要从响应中提取有用的信息,请使用 HTTPResponse
实例上公开的适当方法,例如 getResponseCode
or getContentText
.