Javascript 我无法在nodejs和mongodb中使用get方法从html控件获取数据 代码中的问题
控制台显示未定义的值,而不是输入数据 控制台显示未定义的值,而不是输入数据 我想从html文件中获取数据,并使用get方法插入mongo数据库。但我无法从文本框中获取数据 nodejs中的代码(index.js) HTML页面(index.HTML)Javascript 我无法在nodejs和mongodb中使用get方法从html控件获取数据 代码中的问题,javascript,html,node.js,mongodb,Javascript,Html,Node.js,Mongodb,控制台显示未定义的值,而不是输入数据 控制台显示未定义的值,而不是输入数据 我想从html文件中获取数据,并使用get方法插入mongo数据库。但我无法从文本框中获取数据 nodejs中的代码(index.js) HTML页面(index.HTML) 登录/注册 #容器{ 宽度:40%; 保证金:自动; 边框:1px实心; 填充:10px; 左侧填充:200px; 边界半径:10px; } 登记 登记 登录 登录 您必须在node.js中使用app.post方法 并使用met
登录/注册
#容器{
宽度:40%;
保证金:自动;
边框:1px实心;
填充:10px;
左侧填充:200px;
边界半径:10px;
}
登记
登记
登录
登录
您必须在node.js
中使用app.post
方法
并使用method=post
<form action="/register" method="post">
<div id="register">
<input type="text" name="userid" id="txt_userid" placeholder="Enter user id">
<br>
<input type="password" name="pwd" id="txt_pass" placeholder="Enter password">
<br>
<br>
<button type="submit" id="btn_register">Register</button>
</div>
</form>
登记
向节点发送数据使用post、delete、put方法。但如果希望从节点取回数据,可以使用.get()
方法
我建议尝试打印req(即
console.log(req)
)。数据可能存储在请求正文中。您需要使用POST
request,并且数据已获得;不能在req
对象中使用。相反,它将在req.body
尝试:
试试这个代码
首先将方法更改为POST,要获取发送的输入,必须访问请求的body对象,例如:
req.body.userid
。
const express = require('express');
const path = require('path');
const bodyparser = require("body-parser");
const mongoose = require('mongoose');
const app = express();
app.use(bodyparser());
app.use(bodyparser.urlencoded({
extended: false
}));
app.use(bodyparser.json());
app.set('port', (process.env.PORT || 1000));
mongoose.connect('mongodb://localhost/TrackDB');
var Schema = new mongoose.Schema({
username: String
, pass: String
});
var users = mongoose.model('users', Schema);
app.get("/register", function (req, res) {
var userID = req.userid;
var pwd = req.pwd;
console.log("userid = " + userID + "pass = " + pwd);
new users({
username: userID
, pass: pwd
}).save(function (err, doc) {
if (err) {
res.json(err);
}
else res.send("Successfully Registerd!");
});
console.log("users = " + users);
});
app.get("/", (req, res) => {
res.sendFile(path.join(__dirname, './public/index.html'));
});
app.listen(1000, () => {
console.log("Server Start......");
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>LOGIN/REGISTER</title>
<style>
#container {
width: 40%;
margin: auto;
border: 1px solid;
padding: 10px;
padding-left: 200px;
border-radius: 10px;
}
</style>
</head>
<body>
<div id="container">
<h1>Register</h1>
<form action="/register">
<div id="register">
<input type="text" name="userid" id="txt_userid" placeholder="Enter user id">
<br>
<input type="password" name="pwd" id="txt_pass" placeholder="Enter password">
<br>
<br>
<button type="submit" id="btn_register">Register</button>
</div>
</form>
<h1>Login</h1>
<form action="/login">
<br>
<br>
<div id="login">
<input type="text" name="user" id="userid" placeholder="Enter user id">
<br>
<br>
<input type="password" name="passw" id="pass" placeholder="Enter password">
<br>
<br>
<button type="submit" id="btn_login">Login</button>
</div>
</form>
<h1 id="msg"></h1> </div>
</body>
</html>
<form action="/register" method="post">
<div id="register">
<input type="text" name="userid" id="txt_userid" placeholder="Enter user id">
<br>
<input type="password" name="pwd" id="txt_pass" placeholder="Enter password">
<br>
<br>
<button type="submit" id="btn_register">Register</button>
</div>
</form>
var userID = req.body.userid;
var pwd = req.body.pwd;
console.log("userid = " + userID + "pass = " + pwd);
var userID =req.query.userid;
var pwd = req.query.pwd