function isTokened(data) {
var token = data;
if(token != null || token != undefined){
jwt.verify(token, app.get('userToken'), function(err, decoded) {
return {
"user": decoded._doc.name,
"href": "/salir",
"text": "Salir"
};
});
}else{
return {
href: "/entrar",
text: "Entrar"
};
}
}
- TypeError:c:\ Users \ Hector \ Desktop \ Proyecto \ views \ index.jade:81
79 | li 80 |
a.text(href = '/acerca')Acerca
81 |如果是au.user 82 |李83 | a.text(href =“/ area”)# 84 | li无法读取eval上的未定义属性'user'(eval at(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ jade \ lib \ index.js:218:8),:354:8)eval(eval) at(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ jade \ lib \ index.js:218:8),:453:22)在exports.compile.res(c:\ Users \ Hector \ Desktop \ Proyecto) \ node_modules \ jade \ lib \ index.js:219:38)在Object的Object.exports.renderFile(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ jade \ lib \ index.js:380:38)处 . 在View.exports .__ express [作为引擎](c:\ Users \ Hector \ Desktop \ Proyecto)中的exports.renderFile(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ jade \ lib \ index.js:370:21) \ node_modules \ jade \ lib \ index.js:417:11)在tryRender上的View.render(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ view.js:126:8)(c: \ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ application.js:639:10)在EventEmitter.render(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ application.js:591) :3)在ServerResponse.render(c:\ Users \ Hector \ Desktop \ Proyecto \ n ode_modules \ express \ lib \ response.js:961:7)在C:\ Users \ Hector \ Desktop \ Proyecto \ app.js:167:6在Layer.handle [as handle_request](c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ router \ layer.js:95:5)at next(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ router \ route.js:131:13)at at在Layer.handle上的Route.dispatch(c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ router \ route.js:112:3)[as handle_request](c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ router \ layer.js:95:5)在c:\ Users \ Hector \ Desktop \ Proyecto \ node_modules \ express \ lib \ router \ index.js:277:22
1 回答
jwt.verify不是同步函数,因此您的函数最终退出而不返回任何内容 . 您需要使用回调方法来获取验证结果 . 你想要这样的东西:
如果jwt.verify返回错误或者解码后不包含必填字段,您可能需要进行一些错误处理 .