2014-10-31 147 views
1

我尝试使用REST架构在WebAPI 2.0中实现简单的基于回合的游戏的web服务器。尽管游戏本身(因为它纯粹是基于回合的)似乎是基于web-api的服务器通信的一个好选择,但我对“游戏搜索”功能有一些担忧。当用户想要开始游戏时,GET请求"/api/gamesearch"将被制作(并且等待下一个玩家) - 但是HTTP是无状态的protocole,那么甚至有可能这样做?REST基于WebAPI的游戏服务器

另一个重要的事情(与前面的问题核心) - 我想当玩家(他的ture是atm)没有发送任何请求(不移动)在一段时间内实现“游戏结束”functionallity是不可能的在HTTP response之后由服务器发送(哪个分配给玩家)?

我见过有可能发送Protocole exchange请求切换到WebSocket这又引出另一个问题 - 做WebSockets需要特殊的Web服务器权限(为纯MVC托管就够了吗?) - 我必须保持成本低得多这是可能的(这是个人项目 - 我怀疑我甚至不会为此赚取一分钱)。

回答

1

您可能还需要在整个游戏会话中与您的服务器通信。如果你的游戏是基于浏览器的,像SignalR这样的东西应该适合你的场景。 Usins SignalR您将能够与您的服务器保持持续的沟通,并且您的服务器将能够将数据推送给您的客户。

使用WebApi应该没有问题。在这里你可以找到一个discussion about WebApi and SignalR