无法使用类型错误登录:无法读取空的属性"id"



我遇到以下错误,使用TypeError: Cannot read property 'id' of null登录失败,如何调试和修复此错误?

var cas = require('cas-client');
get_forward_url(function(forwardurl){
console.log('(get_forward_url) forwardurl = ' + forwardurl)
app.get('/login', cas.getMiddleware('https://cas.apple.com',forwardurl), function(request,response){
//console.log('--- printing env...')
//console.log(process.env)
console.log("######### app.get('/login') #########")
console.log("/login request.session.url = " + request.session.url)
console.log("/login request.param('ticket') = " +  request.param('ticket'))
console.log("/login request.session = " +  request.session)
console.log("/login request.session = " +  JSON.stringify(request.session))
console.log('/login request.session.authenticatedUser.id = ' + request.session.authenticatedUser.id)
console.log('/login request.url = ' + request.url)
console.log('/login request.headers = ' + JSON.stringify(request.headers))
request.session.ticket = request.param('ticket');
request.session.user = request.session.authenticatedUser.id
console.log('/login request.session = ' + JSON.stringify(request.session))
console.log('/login request.headers.referer ' + request.headers.referer)
response.redirect('/wifi_build_audit')
// if (request.session.authenticatedUser.id == null || request.session.authenticatedUser.id == undefined || !request.session.authenticatedUser.hasOwnProperty('id') || request.session.ticket == undefined){
//  response.sendfile('./public/partials/login_failure.html');
// }
// else if(request.session.url == undefined){
//  console.log('/login session url is undefined...sending to home')
//  response.redirect('/')
// }
// else{
//  console.log('/login else')
//  response.redirect(request.session.url);
// }
});
require('./app/routes.js')(app);
// listen (start app with node server.js) ======================================
app.listen(port);
console.log("App listening on port " + port);
});

错误:

######### app.get('/login') #########
/login request.session.url = undefined
/login request.param('ticket') = ST-1543605073r414D1C27F6924DB5AD
/login request.session = [object Object]
/login request.session = {"cookie":{"originalMaxAge":null,"expires":null,"httpOnly":true,"path":"/"},"authenticatedUser":null}
TypeError: Cannot read property 'id' of null
at /Users/kchawla/wifi-firmware-web/server.js:56:99
at callbacks (/Users/kchawla/wifi-firmware-web/node_modules/express/lib/router/index.js:164:37)
at /Users/kchawla/wifi-firmware-web/node_modules/cas-client/lib/index.js:93:9
at ClientRequest.<anonymous> (/Users/kchawla/wifi-firmware-web/node_modules/cas-client/lib/index.js:66:14)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:188:7)
at TLSSocket.socketErrorListener (_http_client.js:309:9)
at emitOne (events.js:96:13)
at TLSSocket.emit (events.js:188:7)
at emitErrorNT (net.js:1277:8)
at _combinedTickCallback (internal/process/next_tick.js:80:11)
at process._tickCallback (internal/process/next_tick.js:104:9)

这是因为authenticatedUser的值为null。登录URL不起作用,或者用户未通过身份验证。

相关内容

最新更新