node post接口获取不到前端穿的参数

这是我的后台代码

var express = require('express');
var session = require('express-session');
var router = express.Router();

var logger = require('../logs/logger.js');

router.use(session({secret: 'lee', resave: false, saveUninitialized: true, cookie: {maxAge: 60000}}));

const users = [
    {name:'lee',pass:123456},
    {name:'lee2',pass:123456},
    {name:'lee3',pass:123456}
]


router.post('/login', function(req, res, next) {
    var sta = false;
    logger.info(req.query);
    console.log(req.body);
    users.find((val)=>{
        if(val.name===req.body.name&&val.pass===req.body.pass){
            req.session.sign = true;
            req.session.name = val.name;
            sta = true;
        }
    })
    if(sta){
        res.json({
            code:200,
            msg:"ok"
        })
    }else{
        res.json({
            code:0,
            msg:"no"
        })
    }
});


router.get('/', function(req, res, next) {
    console.log(req.session)
    //获取session
      res.json({
          msg:"ok"    
      })
});
module.exports = router;

这个是我app.js部分配置

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));  

下面是我前端代码

            $.ajax({
                url:"http://127.0.0.1:3000/login",
                method:"post",
                data:{
                    name:'lee',
                    pass:123456
                }
            }).done(function(d){
                console.log(d)
            })

请求结果

阅读 2.3k
2 个回答

你前端传的是formData类型

const bodyParser = require("body-parser");

router.use(bodyParser.urlencoded({ limit: '10mb', extended: false }))
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题