为了账号安全,请及时绑定邮箱和手机立即绑定

初学node.js+mysql ,大佬们帮忙看看吧

初学node.js+mysql ,大佬们帮忙看看吧

莫回无 2018-12-19 17:15:09
router.post('/signin', function(req, res) {  var username = req.body.username;  var password = req.body.password;  if(username&&password) {    pool.getConnection(function(err, connection) {      connection.query('select password from users where username="'+username+'"', function (err, result) {          if(err){              throw err;          } else {              if(result[0] === undefined) {                  res.send('没有该用户。');              } else {                  console.log(result[0].password === req.body.password);//false                  console.log(result[0].password);//123456                  console.log(req.body.password);//123456              }          }      })    })  }});这个地方是为什么?console.log(result[0].password === req.body.password);//false
查看完整描述

1 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

  1. JS里===和==是有区别的,===是严格相等

  2. 你的表结构,password字段是不是数值型的?

所以查询到的
result[0].password 是数字 123456

而外部提交进来的req.body.password是字符串型的,所以他们不严格相等

你打印一下 typeof result[0].password 和 typeof req.body.password 就知道了


查看完整回答
反对 回复 2019-01-26
  • 1 回答
  • 0 关注
  • 512 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信