首页 > 解决方案 > 设置 Urlfetchapp.fetch 函数的超时值

问题描述

我正在尝试使用 Urlfetchapp.fetch 函数将 json 有效负载发布到 url 并接收该请求的 json 响应。

示例代码:

var url = "https://example.com/RST/myapi";
var accessToken = getAccessToken();
var headers = {
  "Authorization": "Bearer " + accessToken
};
var options = {
  "headers": headers,
  "method" : "POST",
  "contentType" : "application/json",
  "payload" : '{ "Name": "Mark" }',
  "muteHttpExceptions": true
};

var response = UrlFetchApp.fetch(url, options);

但是,我的请求因超时错误而中断。有人告诉我,由于 API 资源繁重,根据服务器状态,请求最多可能需要 3 分钟才能返回响应。

无论如何要更改超时限制吗?让它等待至少 3 分钟,直到收到任何回复?

编辑:我刚刚被告知 API 服务没有回调 url 参数,但是在重试时它可能会更快地响应。但我不知道该怎么做?它不是我可以捕捉和检查的响应错误。但是一个超时错误,这意味着在那之后什么都没有执行

谢谢您的帮助。

标签: javascriptgoogle-apps-scripttimeouturlfetch

解决方案


查看GAS 配额

脚本运行时间为 6 分钟,因此超过 3 分钟,如果您的 API 响应时间超过 6 分钟,则 GAS 将停止该功能


推荐阅读