我无法使用nodejs和mongodb中的get方法从html控件中获取数据

时间:2017-07-28 09:15:31

标签: javascript html node.js mongodb

代码中的问题

mysql -usupport -h127.0.0.1 --port=13306 -p
  

控制台显示未定义的值而不是输入数据

     

控制台显示未定义的值而不是输入数据

     

我想从html文件中获取数据并使用get方法插入到mongo数据库中。但我无法从文本框中获取数据。

nodejs中的代码(index.js)

var userID = req.userid;
var pwd = req.pwd;
console.log("userid = " + userID + "pass = " + pwd);

HTML页面(index.html)

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......");
});

3 个答案:

答案 0 :(得分:0)

您必须在document.cookie = "key=value; key2=value2;"中使用app.post方法。

并使用method = post。

node.js

向节点发送数据使用post,delete,put方法。但是,如果您希望从节点获取数据,可以使用 <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> 方法。

我建议尝试打印req(即.get())。可能数据存储在req.body中。

答案 1 :(得分:0)

您需要使用POST请求,并且数据胜出;可以在req对象中使用。相反,它将在req.body

中提供

尝试:

var userID = req.body.userid;
var pwd = req.body.pwd;
console.log("userid = " + userID + "pass = " + pwd);

答案 2 :(得分:0)

  

试试此代码

var userID =req.query.userid;
var pwd = req.query.pwd