gpt4 book ai didi

javascript - 类型错误 : Cannot read property 'username' of undefined in passportjs

转载 作者:行者123 更新时间:2023-12-03 06:41:57 24 4
gpt4 key购买 nike

  app.get('/getUser', function(req, res) {

console.log(req.user.username);

res.json({'user':req.user.username});
});

当我登录passportjs时,这不会返回任何错误,但是当我未登录时,它显示TypeError: Cannot read property 'username' of undefined错误,我需要发送res .json 仅当已定义时,

     app.get('/getUser', function(req, res) {

console.log(req.user.username);
if(typeof req.user.username!="undefined")
res.json({'user':req.user.username});
else
res.json({'user':"Anonymous"});
});

但它给出了条件语句错误,我该如何处理错误?

最佳答案

Passport 将用户置于 req 对象上。如果您没有使用 Passport 进行身份验证,则请求对象上不会有用户对象。因此,req.user 将是未定义的。正如您可能想象的那样, undefined 没有名为 username 的属性,从而导致您的错误。

你可能想要这样的东西:

username = req.user ? req.user.username : "Anonymous"
res.json({'user':username});

关于javascript - 类型错误 : Cannot read property 'username' of undefined in passportjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37914924/

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