【发布时间】:2021-06-23 02:16:18
【问题描述】:
如何在 Google Script 中随机化 Utilities.sleep 函数? 我有一个具有缩短链接功能的 Google 表格。脚本如下:
function ShortURL(longUrl) {
const url = "http://example.com/api/url/add";
const params = {
method: "post",
headers: { Authorization: "Token MYTOKEN" },
contentType: "application/json",
payload: JSON.stringify({
"url": longUrl
})
};
const res = UrlFetchApp.fetch(url, params);
var shortUrl = JSON.parse(res.getContentText()).short;
Logger.log(shortUrl);
return shortUrl;}
但是当我运行它(获取大约 100 个网址)时,它会抛出错误:
异常:一天内服务调用次数过多:urlfetch。 (线 11).
在 Stackoverflow 中搜索和询问后,他们建议我使用 Utilities.sleep(5000);
所以代码变成了这样:
function ShortURL(longUrl) {
const url = "http://example.com/api/url/add";
const params = {
method: "post",
headers: { Authorization: "Token MYTOKEN" },
contentType: "application/json",
payload: JSON.stringify({
"url": longUrl
})
};
const res = UrlFetchApp.fetch(url, params);
var shortUrl = JSON.parse(res.getContentText()).short;
Logger.log(shortUrl);
Utilities.sleep(5000);
return shortUrl;}
但是,它只是等待错误 5 秒。如何随机化Utilities.sleep(5000); 的值?
类似:
Utilities.sleep(RANDOM_FROM_1MINS-5MIN);
【问题讨论】:
标签: javascript google-apps-script google-sheets