0

我想知道如何開始構建一個機器人玩一個棋盤遊戲,這是通過一個RESTful界面定義的方法,如...參加一個遊戲,檢索遊戲狀態,檢查輪次,檢索玩家狀態並進行操作。創建機器人玩通過RESTful界面定義的遊戲

我的問題是,我的機器人(用java寫成)如何知道它何時輪到它?由於遊戲是通過RESTful界面定義的,我的客戶是否應該一遍又一遍地調用「check turn」REST方法,直到它變成我的機器人輪流玩的時候?每半秒鐘一次?

我的客戶如何隨時瞭解遊戲的當前狀態?

謝謝!

+1

這是一個問題,如果它每半秒查詢一次?如果不是那樣做的話。 – placeybordeaux

+0

nope我不認爲這是一個問題,但我只是想看看是否有替代品或任何我失蹤 –

+2

啊,我訂閱的想法,首先使其工作,然後使它漂亮。只是抽象出讓機器人遠離RESTful方面的東西。 RESTful的東西應該可能更容易些,所以我認爲你應該繼續努力。 – placeybordeaux

回答

1

REST被萬維網所使用,所以它可以像Web一樣擴展和處理衝突。

您的TURN(或任何適當的操作)可以是一個資源,並且客戶端可以頻繁使用此資源與e-tagIf-Modified標題。這些標頭使用非常少的帶寬並且非常有效地工作。

除非對手修改state of TURN Resource,否則其他對手將等待(客戶端應用程序)。

如果If-Modified-Since(因爲對手-1製成的移動所需的時間)是正的,這意味着資源狀態從對手-2 move改變,所以控制返回到對手-1,誰將依次修改move,使得控制可以去對手2,等等。

希望澄清一下