You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Apps Script处理POST请求返回405错误求助

解决Google Apps Script Web App无法接收POST请求的问题

核心排查点及修复步骤

1. 确认部署URL的正确性

出现302重定向大概率是用了旧的部署链接或预览URL:

  • 必须使用部署后生成的正式URL,格式为 https://script.google.com/macros/s/[部署唯一ID]/exec
  • 编辑器内的预览URL(带dev后缀)仅支持GET请求,不能用于POST测试。

2. 检查部署权限的细节

确保部署时的两个关键设置完全正确:

  • 执行权限:选择「以我(你的Google账号)身份执行」
  • 谁可以访问:选择「任何人,甚至匿名」

    若未勾选匿名,请求需携带身份凭证,Postman默认不携带会触发权限拦截,进而导致重定向。

3. 修正Postman请求配置

Postman的POST请求需避开这些错误操作:

  • 不要添加X-HTTP-Method-Override这类自定义请求头,会干扰GAS对请求方法的识别
  • 确保Content-Type设置合理,即使无Payload,也可设为application/x-www-form-urlencoded或application/json
  • 关闭「自动跟随重定向」选项,直接用正确的exec URL发起请求,避免重定向后请求方法被转为GET。

4. 代码层面添加验证日志

你的代码本身无语法问题,但可以添加日志确认请求是否到达doPost函数:

function doPost(e){
  console.log("POST请求已接收:", e);
  return ContentService.createTextOutput("POST test success").setMimeType(ContentService.MimeType.TEXT);
}

部署后发起请求,在脚本编辑器的「查看>日志」中查看记录,判断请求是否真的触达了脚本。

5. 排查账号安全限制

如果你的Google账号开启了严格安全验证(如两步验证),需确认请求未被账号安全策略拦截。可以用curl发起简单测试:

curl -X POST https://script.google.com/macros/s/[部署唯一ID]/exec

总结

最常见的问题根源是错误的部署URL或未开启匿名访问权限,按上述步骤逐一排查即可解决405 Method Not Allowed错误。

内容的提问来源于stack exchange,提问作者Mateusz Marchel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 22:50:43