我正在使用nodejs,socket.io和sql数据库制作井字游戏,以存储结果。问题是我无法获得加入游戏室的两名玩家的姓名。我该怎么办?
答案 0 :(得分:0)
您的服务器没有用于socket.io连接的“名称”概念。我可以想到两种将名称与socket.io连接相关联的方法:
如果用户通过http登录到服务器,并且服务器知道该登录名,则可以从socket.io连接访问登录cookie,大概可以使用它来访问服务器端会话对象并以这种方式获取名称。
您可以通过向客户端发送一个告诉其名称的socket.io消息,使客户端向服务器宣布其名称。然后,您的服务器可以接收到该消息,并将socket.io socket
对象上的自定义属性设置为该名称。注意:这不是特别安全,因为客户端可以宣布其想要的任何名称。如果这对您很重要,并且您具有登录名,请使用第一个选项。