使用socket.io时如何访问登录用户?

时间:2018-12-30 19:42:44

标签: javascript node.js express socket.io passport.js

在我所有的路线中,只需转到req.user.username(以获取用户名),就可以轻松地使用password.js和其他内容来捕获已登录的用户,但是有一个页面仅使用websockets,我想知道如何确定已登录用户的用户名。

我到处搜索,发现了一些修复程序,但是它们确实不能很好地工作。最初,我试图做的是有一个变量,该变量会在有人加载页面时立即捕获用户名,idk是我的想法,因为每次有人请求该页面时都会被重置。然后我注意到有人说在前端使用一个不可见的div元素,并在我使用套接字进行发射时将其与数据一起发送,这是可行的,但这是非常不安全的,因为有人可以编辑代码(如果他们知道如何获取)进入开发工具并弄乱事物。

那么你们有易于实施的修复程序吗?

1 个答案:

答案 0 :(得分:0)

(旧但可以帮助其他人)

如果您使用的是护照和socket.io,我认为应该使用该库来获取当前用户的数据:

https://www.npmjs.com/package/passport.socketio