如何解决无法从表单到服务器获取数据 - MERN
我是新手,我无法从服务器中的表单中获取数据以将其插入数据库,代码如下:
形式:
<form method = "post" action = "/register">
<label>
User Name:
<input type = "text" name = "user" onChange = {(text) => setUser(text.target.value)}></input>
</label>
<label>
Password:
<input type = "password" name = "password"></input>
</label>
<input type = "submit" name = "Send" value = "Send"></input>
</form>
和 server.js:
const express = require("express");
const app = express();
const bodyParser = require("body-parser");
const cors = require("cors");
const mongoose = require("mongoose");
const PORT = 4000;
app.use(cors());
app.use(bodyParser.json());
mongoose.connect("mongodb://127.0.0.1:27017/Cook",{
useNewUrlParser: true,});
const connection = mongoose.connection;
app.post("/register",function(request,response) {
let user = request.body.user;
let password = request.body.password;
console.log(user)
})
如果有人可以提供帮助,将不胜感激:)
解决方法
问题是您将输入字段包装在标签中。我已经更新了以下代码:
<form method="post" action="/register">
<label>User Name:</label>
<input type = "text" name = "user" value="keep any default if needed">
<label> Password:</label>
<input type = "password" name = "password">
<input type="submit" value="Send" >
</form>
,
您需要显式启用此功能以解析表单数据。
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。