javascript – 服务错误:Google脚本上的电子表格

范围

我开始编写一个脚本,它将对API进行链式调用(带有JSON响应)并将结果写入电子表格.

怎么了:

一旦我调试脚本代码,它运行正常,没有任何重大问题,但一旦我从电子表格按钮本身(从我创建的菜单)运行它它运行脚本的一些步骤,然后弹出一个:服务错误:没有其他错误详细信息的电子表格.

怪事

我开始将进程的当前步骤“记录”到Spreadsheet单元格,以便我可以在从调试器运行脚本时监视其进度.

问题是,一旦我移动了一些“随机”的部分,例如:

sheet.getRange("F2").setValue(currentPage);

代码往往会在不同的点上破解.

代码示例:

您可以在此处找到重现问题的代码:http://pastebin.com/HjmSwEYZ

你所要做的就是:

1 – 在Google云端硬盘上创建新的电子表格

2 – 命中工具 – >脚本编辑器

3 – 创建新脚本,粘贴代码并保存

4 – 重新加载电子表格(F5),以便自定义菜单现在显示为“Guild Wars 2 Tracker”

5 – 单击按钮并点击“全部列出”

期望的输出:

这段代码应该是什么(如果不是这个错误)做的是:

1 – 在此网址上执行请求:http://www.gw2spidy.com/api/v0.9/json/items/all/1(将返回Guild Wars 2 itens的第一页)

2 – 遍历每个页面,解析json并将返回的值写入电子表格

免责声明:

对于表格中的所有“日志”消息,我们深表歉意.这是追踪我进步的绝望尝试,我知道我不应该这样做.

提前致谢

更新1:

创建另一个电子表格并将粘贴代码粘贴到自己的脚本项目后,我可以在交互时运行它,但就是这样.这次,它引发了一个不同的错误:很抱歉,发生了服务器错误.请稍等一下再试一次.

解决方法

我喜欢ellockie所说的 – 我(不知不觉中)有同样的问题.我试图range.sort(8),但为了收集范围,我使用:
sheet.getRange(2,1,sheet.getMaxRows(),sheet.getMaxColumns());

但我应该使用的是:

sheet.getRange(2,sheet.getMaxRows()-1,sheet.getMaxColumns());

截至2015年5月1日的错误消息仍然非常神秘,并没有提供比“服务错误:电子表格”更详细的信息.

相关文章

kindeditor4.x代码高亮功能默认使用的是prettify插件,prett...
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小