使用方法调用时,UserSchema.statics函数不起作用

时间:2019-03-28 06:11:52

标签: javascript node.js mongoose

我正在执行用户身份验证并成功创建了用户。但是对于身份验证,我遇到了一些错误。错误是User.findToken不起作用。我也正确导出了文件。

app.get('/users/me', (req, res) => {

    var token = req.header('x-auth');

    console.log(token);


    User.findToken(token).then((user) => {
        if(!user){
            return Promise.reject();
        }

        res.send(user);
    }).catch((e) => {
        res.status(401).send();
    })
});

UserSchema.statics.findToken = function(token) {

    var User = this();

    var decoded;

    try{
        decoded = jwt.verify(token, 'abc123');
    }catch(e) {
        return Promise.reject();
    }

    return User.find({
        _id: decoded._id,
        'tokens.token': token,
        'tokens.access': 'auth'
    });
};

0 个答案:

没有答案