gpt4 book ai didi

javascript - 尝试将哈希用户名存储在数据库中

转载 作者:行者123 更新时间:2023-11-27 23:04:23 24 4
gpt4 key购买 nike

我正在尝试使用 JavaScript-MD5 插件对用户名进行哈希处理,然后将其存储到数据库中以与 Jdenticon 一起使用。我可以使用 var hash = md5($scope.username); 对密码进行哈希处理并将其记录到控制台,但无法将其传递给我的 newUser 变量。

  1. 注册 Controller

    $scope.register = function(){
    var hash = md5($scope.username);
    console.log(hash);
    var newUser = {
    email: $scope.email,
    password: $scope.password,
    username: $scope.username,
    userHash: hash
    };

    $http.post('/users/register', newUser).then(function(){
    $scope.email = '';
    $scope.password = '';
    $scope.username = '';
    userHash = '';
    };
  2. 注册路线:

    app.post('/users/register', function(req, res) {

    bcrypt.genSalt(10, function(err, salt) {
    bcrypt.hash(req.body.password, salt, function(err, hash) {
    var user = new User({
    email: req.body.email,
    password: hash,
    username: req.body.username,
    userHash: req.body.userHash
    });
    console.log(user);

    user.save(function(err) {
    if (err) return res.send(err);

    return res.send();
    });
    });
    });
    });

最佳答案

我猜您可能在 User 模型中错过了 userHash 属性,这就是您无法在数据库中存储 userHash 的原因。

因此,您应该在您的 User 模型中包含第一个 userHash ,然后应该可以正常工作。

喜欢:

var mongoose = require('mongoose'),
Schema = mongoose.Schema;

var UserSchema= new Schema({
username : {
type: String,
required: true
},
email: {
type: String
},
password: {
type: String
},
userHash:{
type: String
}
});
mongoose.model('User', UserSchema);

关于javascript - 尝试将哈希用户名存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36727601/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com