你如何将php会话数据传递给socket.io?

我正在编写一个应用程序,用户可以同时从多个浏览器login,并在页面加载时build立到服务器上的socket.io连接。

我想跟踪所有的客户端套接字ID, socket.id ,在一个redis集合中,其键值看起来像userId:???:socketClientIds为login用户。 我想SADD的套接字客户端ID后,通过AJAX调用PHP脚本的Redis设置。

由于我保持用户名在PHP会话variables$_SESSION['userId'] ,什么是安全/实用的方式,我可以将此用户ID的值传递给socket.io所以我可以将客户端ID添加到集?

client.sadd("userId:???:socketClientIds", socket.id)

我不能相信客户端为userId提供准确的值,因为它可能是伪造的。

如果您在PHP中使用默认会话处理程序,则可以使用groan在节点中parsing用户的会话文件。 否则,您可能会考虑使用MySQL , memcached或Redis作为会话存储,以便从PHP和节点更容易地访问它。