【发布时间】:2014-11-04 03:16:21
【问题描述】:
我有如下的谷歌电子表格公式
function mydata(para1, para2, para3){
var myurl = "http://someurl/data2?one="+ para1 +"&two=" + para2 + "&three="+para3;
var result = UrlFetchApp.fetch(myurl);
var result1 = Utilities.jsonParse(result.getContentText());
if (result1.length === 0){
return null;
}else{
return result1;
}
}
我在我的电子表格中使用了这个公式 400 多次。问题是存在此公式的许多单元格显示错误为Error: Service invoked too many times in a short time: urlfetch. Try Utilities.sleep(1000)
这是第一个问题。
如果我编辑该公式单元格并再次单击..那么错误仍然存在。它应该重新加载/重新计算该公式。这是我的第二期。
许多stackoverflow 解决方案和各种博客文章都建议尝试使用Utilities.sleep(1000);但是在这里我该如何使用它?我没有运行任何循环,在每个循环上我都应该像这样等待。 那么如何在这里控制这种行为。
同样在第 2 期;我认为谷歌电子表格正在缓存结果;但我不知道如何修改/更改“onEdit”
【问题讨论】:
-
您认为 Google 正在缓存什么“结果”?请编辑您的原始帖子并提供一个示例。
-
结果是数字和字符串的 json 数组;例如:
[["Q1", "Q2", "Q3", "Q4"]["23.2", "10.5", "15.6", "12.9"]] -
如果我更改参数;那么只有它会更新公式;并在这样做之后;当我定义原始参数时(恢复我的更改);它不会立即更新单元格......但经过一段时间/更多这样的试验后它正在更新......但不是立即!!!!
-
能给个真实的网址给我们看看吗?
标签: google-apps-script google-sheets