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

ExpressJS中点击提交按钮后无法打印Hello World的问题排查

问题排查与解决

核心问题是表单提交未正确触发/Add-Experience-2的POST路由,以下是几个必查关键点:

  • 检查表单的action和method属性
    打开add-experience.html,确认表单代码是否符合要求:

    <form action="/Add-Experience-2" method="POST">
      <!-- 表单内容 -->
      <button type="submit">提交</button>
    </form>
    

    必须满足两个条件:

    1. action的值严格等于/Add-Experience-2(Express路由区分大小写,拼写、大小写完全一致才会匹配)
    2. method属性必须设置为POST(若为GET,会匹配不到你的POST路由)
  • 检查页面JS是否阻止表单默认提交
    如果页面有自定义表单提交事件处理代码,比如:

    document.querySelector('form').addEventListener('submit', function(e) {
      e.preventDefault(); // 阻止默认提交行为
      // 但未手动发送POST请求到/Add-Experience-2
    });
    

    这种情况会导致表单无法自动发送请求到目标路由,要么移除e.preventDefault(),要么在处理逻辑后手动发起POST请求。

  • 验证请求是否实际发送
    打开浏览器开发者工具(F12)的**网络(Network)**标签,点击提交按钮后查看请求记录:

    • 若无/Add-Experience-2请求:说明表单未触发提交,回到前两点检查表单配置和JS代码
    • 若请求状态为404:说明路由匹配失败,再次核对路由路径的拼写、大小写是否完全一致
  • 检查路由优先级与中间件
    确保app.post("/Add-Experience-2")的定义没有被更宽泛的路由(比如app.post("/*"))覆盖,且应用中没有拦截请求的错误中间件,导致请求无法到达该路由。

内容的提问来源于stack exchange,提问作者cihan toker

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 11:54:54