Google Apps脚本支持触发器,可将事件传递给触发器功能.不幸的是,开发环境将允许您在没有参数传递的情况下测试函数,因此您无法以这种方式模拟事件.如果你尝试,你会收到如下错误:
ReferenceError:未定义'e'.
可以将事件视为可选参数,并使用" 在JavaScript中有更好的方法来执行可选函数参数吗? "中的任何技术将默认值插入到触发器函数中.但是这会带来一种风险,即一个懒惰的程序员(如果那就是你那么举手!)会留下那些代码,带来意想不到的副作用.
当然还有更好的方法吗?
Apps Script 最近将 StackDriver 日志移至Apps Script 仪表板的“执行”页面。
问题是,日志不会显示在 Apps Script Web 应用程序的仪表板中。当我向 Apps Script Web 应用程序发出请求时,我可以看到新的执行行,但该行不会展开以显示日志。
我正在使用 Stackdriver Logging:
function doPost(e) {
console.info('my log');
}
Run Code Online (Sandbox Code Playgroud)
奇怪的是,当我调用 dev url 时它起作用(部署列被标记为“头部”),当我单击它时该行确实会消耗并且我可以看到日志,但是对于完全相同的应用程序,它在我调用时不起作用以 /exec 结尾的生产 url(部署列被标记为“版本 2”)。
此外,它适用于 GET 请求,但不适用于 POST 请求。
使用以下权限部署 Web 应用程序:
这是他们新界面中的错误还是我遗漏了什么?