【发布时间】: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