【发布时间】:2020-11-11 19:34:02
【问题描述】:
网络应用程序:
function doPost(e) {
var data = JSON.parse(e.postData.contents).somethingtobreakthecode()
return "Okay"
}
收到 POST 请求时会失败。
任何人,即使是匿名者,都可以执行 WebApp。
问题是:
如果 WebApp 不会在记录器中显示任何日志并且您看不到执行的输出,我们该如何调试它?
我尝试过 BetterLog,它回答了日志记录部分,但如果错误输出不可见,则需要付出很多努力。
编辑: 我尝试过的所有事情的清单
- BetterLog:它让我可以将日志放在我认为脚本会中断的特定行。
- ReqBin:它可以让我看到这个 doPost 会产生的错误,但要做到这一点,我必须在每次更改时发布一个新版本。
- DevUrl:由于缺乏授权,无法将 DevUrl 与 ReqBin 一起使用。 (我在这里遗漏了什么吗?)
- StackDriver:它只显示执行是完成还是失败。
- 我尝试记录 e 手动传递它,但我得到了 [Object] 对象。是否可以从 doPost(e) 中获取 (e) 的值并从其他函数手动将其传递给 doPost?
【问题讨论】:
-
您是否使用过任何应用程序脚本 loogers 或无法访问该功能?developers.google.com/apps-script/guides/logging
-
我已经更新了问题
-
使用 try-catch 块和
console.log错误消息在堆栈驱动程序中查看内容 -
是否可以从doPost(e)中获取(e)的值,并从其他函数手动传递给doPost?
-
您是否能够记录问题?您能否分享完整的代码和网络应用程序以尝试重现该问题?