如何解决如何修复404错误节点JS Express POST请求
我正在尝试将以下html表单提交给js文件:
<form action="/submit-form" method="POST">
<input type="text" name="username">
<button> Click Here Now </button>
</form>
这是我要提交的文件。我尝试过移动文件夹,更改端口,但似乎没有任何效果。
var express = require('express');
var app = express();
app.listen(80,function(){
console.log("Hello whatsup");
})
app.post('/submit-form',function(req,response){
console.log("All great");
})
这两个文件都位于我的Xampp htdocs文件夹中,特别位于包含为此特定项目制作的文件夹内。它包含package.json文件,node_modules文件夹,js文件和html表单。
解决方法
如果您只是在本地运行表单而没有任何托管/呈现方式,则需要为其指定URL,以了解如何访问本地服务器。
示例1:
使用您的代码示例,但略作修改以使用非相对路径
假设您在计算机中创建了文件index.html
,并通过浏览器打开了上面示例中包含以下内容的文件
<form action="http://localhost:8080/submit-form" method="POST">
<input type="text" name="username">
<button> Click Here Now </button>
</form>
以上假设您的服务器的端口设置为8080,如下所示。我所做的只是在代码中修改了端口
假设您有一个以node server.js
开头的server.js文件。注意:这假设您已经在node_modules中表达了
var express = require('express');
var app = express();
app.listen(8080,function(){
console.log("Hello whatsup");
})
app.post('/submit-form',function(req,response){
console.log("All great");
})
示例2:
使用您的代码示例来解释相对路径
如果您将服务器和客户端都托管在同一服务器中,则用于index.html的URL与用于服务器的URL相同。然后您可以使用相对路径
<form action="/submit-form" method="POST">
<input type="text" name="username">
<button> Click Here Now </button>
</form>
因为这将寻找您要渲染的域。假设您正在渲染并以域http://awesomeurl.com结尾,那么当您的表单命中/ submit-form时,它将使用POST请求调用http://awesomeurl.com/submit-form
。如果您的服务器也由相同的URL托管并公开,那么它将全部正常工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。