请教一下有关session的问题
发布于 2年前 作者 lian774739140 1058 次浏览
var name = socket.handshake.session.user;
TypeError: Cannot read property 'user' of undefined

这是显示的错误内容,我在用户登入时有

exports.reg = function(req, res){
var User = require('../models/user.js');
var newUser = new User({
    name: req.body.username,
    password: req.body.password,
});
User.get(req.body.username,function(err, password){
    if(!password){
        return res.redirect('/');
    }
    if(password != req.body.password){
        return res.redirect('/');
    }else{
        req.session.user = newUser;
        res.redirect('/talk');
    }
})

};

有让req.session.user = newUser;并且立刻console.log(req.session.user)是可以调用的,可是为什么在socket.io中的io.sockets.on('connection', function (socket)中显示如上错误?

1 回复

我猜可能走的协议不同的缘故,你的session信息只基于http协议才支持的,而socket是走的tcp/ip协议是不支持session的。

回到顶部