使用express和socket.io时,如何在socket中获得控制器中赋值的session
发布于 11 年前 作者 enkywork 5121 次浏览 最后一次编辑是 8 年前

控制器部分代码:req.session.username =****; app.js部分代码:io.of(/chat).on(connection,function(socket){ //获得req.session.username的值 }) 请问怎么获得到

6 回复

目前还没有找到方法,可以直接在服务器上获取session值的方法

不过话要说话来,因为你刷新一次页面,都会进行一次socket的连接

那么当客户端连接服务器的时候,都会触发socket.io的connection事件

你可以把你session中的值,赋值给一个javascript变量,然后连接的时候会以json格式发送到

服务器,这样你在代码里就可以取到当前session的值了

但我想做的是:“用户”在控制器渲染的页面中提交用户的名字给app.js,然后app.js中分发这个名字给所有的人,按你所说的话,用户就可以自己随意指定自己的名字了。我实际的应用场景是:在聊天室中,用户发一个消息,其它人会看到是“谁”发的。是不是我这样做有问题呢?

据说牛人很多,咋没有能回答这么常见问题的人儿捏?

socket.io入门 你看看这篇能不能解决你的问题?

io.set(‘authorization’,callback)

一句话,好帖,我今天也在困扰这个,一楼的方法不错

回到顶部