Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML表单请求正文为空-NodeJs_Html_Node.js_Forms_Postman - Fatal编程技术网

HTML表单请求正文为空-NodeJs

HTML表单请求正文为空-NodeJs,html,node.js,forms,postman,Html,Node.js,Forms,Postman,我试图使用Node.js和express创建一个API帖子。我只是想用html表单发布一些数据: <form id="myform" action="http://localhost:4000/add" method="post" enctype="application/json"> <input type="text" name="name" id="name" /> <input type="submit" id="submit" />

我试图使用Node.js和express创建一个API帖子。我只是想用html表单发布一些数据:

<form id="myform" action="http://localhost:4000/add" method="post" enctype="application/json">
    <input type="text" name="name" id="name" />
    <input type="submit" id="submit" />
</form>
控制台接收到的内容是: 请求:{}

尝试使用Postman-raw、JSON(application/JSON)将内容发布到同一个api中,一切正常


有人能告诉我我做的有什么问题吗?

action属性中,您不需要指定主机,只需指定路径,例如“/add

浏览器不支持将HTML表单作为应用程序/json提交。大多数浏览器可能会忽略该值,并将表单作为默认的
enctype
发送,即application/x-www-form-urlencoded。要解析它,您需要使用适当的中间件。一个这样的例子是
主体解析器
模块。

前面提出的问题是:如果您从同一个服务器调用(例如,如果html文件是alsoon localhost),这才是正确的。太棒了!谢谢,解决了我的问题:我刚刚添加了
app.use(bodyParser.urlencoded({extended:false}))
作为我已有的json主体解析器的补充。
router.post('/add', function (req, res){
    console.log("request: "+JSON.stringify(req.body));
})