如何查看传入Google Apps Script Web应用的webhook数据
解决Google Apps Script Web应用doPost接收webhook数据无日志问题
- 补全doPost返回值与容错逻辑
Google Apps Script要求doPost/doGet方法必须返回合法的响应对象,否则会直接触发运行错误,导致console.log逻辑不会执行。同时添加容错逻辑避免请求结构异常时打断日志打印,修改后的参考代码如下:
function doPost(incomingData){ // 容错处理避免访问不存在属性触发报错 if (incomingData?.postData?.contents) { console.log('接收到的webhook内容:', incomingData.postData.contents) } else { console.log('请求未携带有效postData,完整请求结构:', incomingData) } // 必须返回响应,否则请求会执行失败 return ContentService.createTextOutput(JSON.stringify({status: "success"})) .setMimeType(ContentService.MimeType.JSON) }
- 确认Web应用部署版本正确
每次修改代码后,必须重新部署Web应用且选择「新版本」,不能沿用已有部署版本,否则修改后的代码不会生效,依旧运行旧版本逻辑。 - 确认日志查看路径正确
关联标准GCP项目后,webhook触发的异步请求日志不会出现在Google Apps Script编辑器默认的「执行日志」面板,需按以下路径查看:- 打开对应GCP项目的Cloud Logging页面
- 资源类型筛选为「Google Apps Script 项目」
- 添加对应脚本的项目ID作为筛选条件,即可查看所有Web应用触发的运行日志
内容的提问来源于stack exchange,提问作者Nutritional Burkard
相关产品推荐
相关产品推荐

