我想使用 aspx 和 ajax 创建一个交互式网站,例如,可以选择创建国际象棋游戏室,其他玩家也可以加入。
我有 2 个问题:
- 我想知道您是否知道如何在一名玩家点击按钮并完成他的回合后,另一名玩家将能够移动。
第一个玩家完成回合后,我将使用数据库更改回合,但关键是如何刷新其他玩家的站点,以便当另一个玩家完成回合时,轮到第二个玩家?
- 当有人创建一个房间并关闭他的浏览器时 - 我需要关闭那个房间。我应该使用 Session_OnEnd 关闭他打开的房间吗?
谢谢!
我想使用 aspx 和 ajax 创建一个交互式网站,例如,可以选择创建国际象棋游戏室,其他玩家也可以加入。
我有 2 个问题:
第一个玩家完成回合后,我将使用数据库更改回合,但关键是如何刷新其他玩家的站点,以便当另一个玩家完成回合时,轮到第二个玩家?
谢谢!
我想知道您是否知道如何在一名玩家点击按钮并完成他的回合后,另一名玩家将能够移动。
有很多方法可以做到这一点。如果是我,我会有一个“移动”数据库表或其他东西,并跟踪谁在里面移动它。然后在页面上有SetInterval()
javascript 方法,该方法使用 ajax 服务查看该“移动”表并确定用户何时轮到。
当有人创建一个房间并关闭他的浏览器时 - 我需要关闭那个房间。我应该使用 Session_OnEnd 关闭他打开的房间吗?
您可以使用Session_OnEnd
. 作为替代方案,您可以使用检查moves
表的 ajax 方法来查看用户何时没有在 x 分钟内检查,然后关闭他们的会话。
最简单的方法可能是对每个客户端进行简单的心跳/轮询,看看是否轮到他/她。虽然,这些天推/彗星变得越来越容易。
如果您已经在使用轮询/心跳技术,那么在错过 5 次心跳之后关闭会话将是微不足道的。