我想创建新用户并保存到数据库中的用户表中
我的行动如下:
create: function(req,res,next){
bcrypt.hash(req.param('password'),10,function (err, hashed) {
if (err) {
console.log("4");
return res.serverError({'err': 'hash Error!'});
} else{
User.create({
username: req.param('username'),
password: hashed,
type: req.param('type')
},function (err, created_user) {
if (err) {
err = validator(User, err);
return res.json({'status': false, 'errors': err.Errors});
}
return res.json({'status': true, 'result': created_user});
}
);
}
}
} 我的用户模型是:
module.exports = {属性:{用户名:{ type:'string',必需: true,唯一: true },
password: {
type: 'string',
required: true
},
type: {
type: 'number',
columnType: 'integer'
},
last_x_map: {
type: 'number',
columnType: 'float'
},
last_y_map: {
type: 'number',
columnType: 'float'
},
places :{
collection: 'place',
via: 'user_owner'
},
},
validationMessages: {
username:{
required: '...',
alphanumericdashed: '...',
unique: '...'
},
password: {
required: '...'
}
},但它总是返回false,并且不做任何事情。
问题出在哪里?
或者你对此有什么建议?
非常感谢。
发布于 2021-02-16 17:56:17
我的sails.js版本是1.4.0
"sails-hook-organics": "^2.0.0",是提供散列和检查散列密码sails.js 的密码帮助器的依赖项
var newUserRecord = await Users.create({
name: name,
email: newemail,
password: await sails.helpers.passwords.hashPassword(password),
})
.intercept('E_UNIQUE', 'emailAlreadyInUse')
.intercept({ name: 'UsageError' }, 'invalid')
.fetch(); var userRecord = await Users.findOne({
email: email.toLowerCase(),
});
await sails.helpers.passwords.checkPassword(password, userRecord.password)
.intercept('incorrect', 'badCombo');
return this.res.redirect('/dashboard');如果您的密码与哈希密码不匹配,则会出现错误组合错误,否则会重定向至仪表板
https://stackoverflow.com/questions/49694116
复制相似问题