Php 这是安静的吗?使用补药

Php 这是安静的吗?使用补药,php,rest,Php,Rest,我正在尝试创建一个REST服务,它在数据库中显示/添加/删除/编辑足球数据。 我已经做了一个如何实现这一点的设计,但它变得相当复杂 例如,当进球时,我应该调用什么URL 所以问题是,我是朝着正确的方向走,还是你有不同的建议 在您的结构中,除了您应该切换PUT和POST之外,其他一切似乎都很好。 PUT可用于更新/创建记录。如果您事先知道资源ID,可以使用PUT POST用于创建您不知道其ID的新资源 Stackoverflow在这里有一个非常详细的讨论: 我同意你的观点,但有一点除外,那就是P

我正在尝试创建一个REST服务,它在数据库中显示/添加/删除/编辑足球数据。 我已经做了一个如何实现这一点的设计,但它变得相当复杂

例如,当进球时,我应该调用什么URL

所以问题是,我是朝着正确的方向走,还是你有不同的建议


在您的结构中,除了您应该切换PUT和POST之外,其他一切似乎都很好。 PUT可用于更新/创建记录。如果您事先知道资源ID,可以使用PUT

POST用于创建您不知道其ID的新资源

Stackoverflow在这里有一个非常详细的讨论:

  • 我同意你的观点,但有一点除外,那就是PUT不应该总是用于编辑。它应该只在您需要时使用。如果您发送的是修改或部分内容,请使用POST或不太知名的方式
  • 仔细阅读应该是有用的
  • 您最有可能使用POST或补丁更新目标计数:
    /{country}/team/{team_id}/goals
  • 某些东西不是REST的最大原因是服务不可发现。仔细阅读

这个例子()实际上使用POST来更新,PUT来创建。我还没有看到。我通常回避基于PHP的REST框架。其中大多数都有不正确的实现。:)我不建议使用POST进行编辑,因为它不是幂等式的,而且使用setter语义的部分更新也是如此。对于部分编辑,使用补丁是imho的最佳建议(尽管不像PUT那样普遍)。@mtsz POST在协议中定义的不是幂等的,但这并不意味着您不能实现幂等的部分更改POST。我绝对同意你关于补丁的看法,这就是我提到它的原因。