首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >猫鼬加密失败,佩奇继续滚动

猫鼬加密失败,佩奇继续滚动
EN

Stack Overflow用户
提问于 2021-10-16 03:33:24
回答 1查看 78关注 0票数 0

我遇到了一个名为“猫鼬加密”的npm包的问题。这是我的密码。

代码语言:javascript
复制
main().catch((err) => console.log(err));

async function main() {
    await mongoose.connect('mongodb://localhost:27017/userEncryptedDB', { useNewUrlParser: true });
}

const userSchema = new mongoose.Schema({
    email: String,
    password: String
});

const secret = 'xxs4Ox4nSKSVnJzIxzy+es6ouOmoMcqcarAnEVRP26Q=';

userSchema.plugin(encrypt, {secret: secret, encryptedFields: ['password']});

const User = mongoose.model('User', userSchema);

现在,如果我不使用包,注册和登录到网站的工作正常,但如果我使用插件,它说:“你从来没有注册!”即使我注册了电子邮件和密码..。

代码语言:javascript
复制
app.post('/login', (req, res) => {
    const email = req.body.username;
    const password = req.body.password;

    User.findOne({email: email, password: password}, (err, user) => {
        if(err) {
            console.error(err);
        } else {
            if(user){
                console.log('You are already registered!');
                res.render('secrets');
            } else {
                console.error('You are never registered!');
            }
        }
    });
});

我在这里做错什么了?我启动了计算机停止了数据库,重新启动了它。注册是成功的,但当我试图登录页面继续滚动..。如果我不使用猫鼬加密,登录页面工作良好,一旦我输入密码。

我可以清楚地看到,新的用户名被添加到数据库中,如下所示:

代码语言:javascript
复制
{ "_id" : ObjectId("616a4aa45dfbf877d9f92468"), "email" : "aras@aras.com", "_ct" : BinData(0,"YbVYW9Pi6dz1yqRD7XgcEyEp48lLGVjp3J40ZgxGt/YuA8+eyiyebMaO9AGdygBj6A=="), "_ac" : BinData(0,"YQiV2QvS9AyrE1hjm81x5U8K6+0lT8h1ruxtCEZv/iwZWyJfaWQiLCJfY3QiXQ=="), "__v" : 0 }

但是当我尝试登录时,它无法检索密码。我在这里使用的密码是"1“。

EN

回答 1

Stack Overflow用户

发布于 2022-09-20 19:37:42

尝试删除集合(首先将其保存到某个地方供以后使用),然后再试一次。看起来不错!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69592430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档