【问题标题】:not matching password parameter in sails controller帆控制器中的密码参数不匹配
【发布时间】:2014-06-03 07:06:46
【问题描述】:

我是sails的新手,我正在制作一个简单的登录功能,其中名为find的控制器将进入数据库并检查用户名密码是否有效,但我面临的问题是它正在检查用户名称,我认为不是密码,因为在参数中我传递了正确的密码,我通过简单地使用链接传递参数,我传递参数的链接是

http://localhost:1337/find/index?name=ahsan&pass=pakistan

我的查找控制器中的代码是

var Sequelize = require('sequelize');
 var sequelize  = require('../../config/config_db').dbase;

    var user = sequelize.define('Data',{
      username: Sequelize.STRING,
      birthday: Sequelize.STRING
    })

sequelize.sync();

module.exports = {



  index: function (req, res) {        

  var n = req.param('name');
  var p = req.param('pass');


  user.find({ where: { username : n, password : p }    })
  .complete(function(err, name, pass)
  {
    if (!!err) 
      {
        return res.json('error while connecting db')
      }
    else if (!name) 
      {
        return res.json('no user with this name')
      }
    else if (!pass)
    {
      return res.json('no user with this password')
    }
    else
    {
      return res.json('user is valid')
    };


})

    // Send a JSON response
    // return res.json({
    //   hello: 'world'

  },

  _config: {}


};

在控制台中执行的查询是

SELECT * FROM `Data` WHERE `Data`.`username`='ahsan' AND `Data`.`password`='pakistan' LIMIT1;

密码 pakistan 存在于我的数据库中,它向我显示的输出是

"no user with this password"

如果我弄错了,请告诉我。

【问题讨论】:

    标签: node.js sails.js sequelize.js


    【解决方案1】:

    您在 Sequelize 中滥用了 .complete() 回调。它应该有两个参数:err 和检索到的项目(在本例中为用户)。试试:

    user.find({ where: { username : n, password : p }    })
      .complete(function(err, user)
      {
        if (!!err) 
          {
            return res.json('error while connecting db')
          }
        else if (!user.name) 
          {
            return res.json('no user with this name')
          }
        else if (!user.pass)
        {
          return res.json('no user with this password')
        }
        else
        {
          return res.json('user is valid')
        };       
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-22
      • 2022-10-24
      • 1970-01-01
      • 2021-04-04
      相关资源
      最近更新 更多