我希望2位用户可以私下聊天或私下玩游戏。我应该如何使用会话将两个用户之间的共享数据保密,例如聊天数据或任何其他数据,例如他们私下玩的国际象棋游戏数据。
是否可以使用会话或是否有更好的方法?
答案 0 :(得分:0)
您不应该为两个/多个用户使用一个会话,因为将来您可能希望将数据存储在应该在用户之间共享的会话中(如果您实现登录系统,可能是用户名)。
您应该在数据库中为每个案例创建一个表。如果你想实现一对一的聊天,你应该创建一个像下面这样的表来存储person1写给person2的消息。
表chat_messages
:
from_user_id | to_user_id | message | timestamp | ...
-------------------------------------------------------------------------------
3 | 6 | 'Are you there?' | '2016-01-08 02:00:00' | ...
9 | 2 | 'Hello, this is Maik' | '2016-01-08 03:45:00' | ...
2 | 9 | 'Hi Maik, how are u?' | '2016-01-08 03:45:10' | ...
还应该有一个用于存储user
信息的表格,其中包括一个唯一标识符(例如user_id
)。表user_id
中将使用chat_messages
来引用用户。在您的会话中,您只会存储相应用户的userId。
这意味着:每个用户在users
表中都有自己的会话和自己的数据集。