Express中app.post()无输出,点击按钮返回Cannot POST /index.html问题
问题分析与解决
出现Cannot POST /index.html错误的核心原因是:前端表单提交的目标路径是/index.html,但你的Express后端只在根路径/上配置了POST路由,两者不匹配。
解决步骤:
修正前端表单的action属性
打开你的index.html,找到表单标签,确保action属性值为/,而不是/index.html。示例代码:<form action="/" method="POST"> <!-- 表单输入项 --> <button type="submit">提交</button> </form>清理后端冗余代码
你的POST路由中,res.send()方法已经自动完成了响应的发送与结束,无需额外调用res.end(),可以删除这一行避免潜在问题。修改后的后端POST路由代码:app.post("/",function(req,res){ console.log(req.body); res.send("Thank you for posting that!"); });
完成以上两步后,重启服务器,点击提交按钮就能正常触发POST请求并返回预期内容了。
内容的提问来源于stack exchange,提问作者Anshul Ojha
相关产品推荐
相关产品推荐

