如何使用REST编写?

时间:2013-07-30 15:07:25

标签: ruby-on-rails api rest

我正在制作一款浏览器游戏,它完全基于AJAX,因此我尝试创建一个合适的RESTful API。 所以,我有一个User模型(基本上,User有武器,健康和行动点) 所以我有一个users资源。现在,我想实施用户攻击 场景:ID = 1的用户攻击id = 2的用户 我会这样做:

  1. 发送以下信息(使用POST请求):
    • target_id(好吧,它从会话中存储在ApplicationController中)
    • attacker_id
    • weapon_id(武器攻击者用来攻击他的目标)
      /users/attacker_id/attack/
  2. 如果目标尚未死亡,则验证用户是否有足够的操作点和攻击健康状况。如果这些条件失败 - 如果成功则不做任何事情 - 减少攻击者行动点和弹药,降低目标HP。所有这些都是在名为attack的模型方法中为攻击者完成的。
  3. 一般来说这是一种正确的方式还是有更好的Rails方式? 谢谢!

1 个答案:

答案 0 :(得分:1)

当你正在做的事情是基于资源的CRUD交互时,REST真的是最有意义的。在这种情况下你并没有真正做到这一点 - 你可以在概念上强迫它符合,但我认为你最终会增加不必要的和不直观的复杂性。

我说你只是不使用REST。只需进行一次攻击动作即可完成任务并完成剩下的任务。