0

我想知道如何开始构建一个机器人来玩一个通过 RESTful 接口定义的棋盘游戏,该接口具有诸如……加入游戏、检索游戏状态、检查回合、检索玩家状态和做出动作等方法.

我的问题是,我的机器人(用 java 编写)如何知道什么时候轮到播放?由于游戏是通过 RESTful 接口定义的,我的客户端是否应该一遍又一遍地调用“checking turn”REST 方法,直到轮到我的机器人玩?就像每半秒?

我的客户如何优雅地跟上游戏的当前状态?

谢谢!

4

1 回答 1

1

REST 被万维网使用,因此它可以像 Web 一样扩展和处理冲突。

您的 TURN(或任何适当的操作)可以是 Resource,并且客户端可以经常使用或headers来获取poll此资源。这些标头使用非常少的带宽并且工作非常有效。e-tagIf-Modified

除非对手修改state of TURN Resource,否则其他对手将等待(客户端应用程序)。

如果If-Modified-Since(自对手 1 采取行动的时间)为正,则意味着资源状态move从对手 2 发生变化,因此控制权返回对手 1,对手将依次进行修改move,以便控制权转到对手 2,等等。

希望这可以澄清

于 2013-02-08T04:38:50.977 回答