如果我只想编辑/更新一篇文章,那么PUT REST请求的正确URI是什么?
是吗:
// PUT api/articles
或:
// PUT api/articles/id
更新
我不知道我是否可以使用所有其他属性(标题等)从正文中发送文章ID,并从URI中发出id,或者我也应该将其添加到URI中。但我想我已经得到了答案。我猜的是身体和URI中的id。
答案 0 :(得分:4)
如果您遵循REST原则,那么正确的答案是“无论您在创建资源的POST请求的Location头中得到什么”。基本思想是服务器在创建资源时将URI路径指定为资源标识符。当您想要引用相同的资源时,该路径就是您在后续请求中使用的路径,包括GET,PUT和DELETE。
如果要通过对/ api / articles进行GET来检索要更新的资源,那么也可以使用/ api / articles作为PUT请求。如果您使用GET / api / articles / id,则使用PUT / api / articles / id对其进行更改。
答案 1 :(得分:2)
根据您所说的内容,我猜测您要更新或创建新文章,而不是替换所有文章。
PUT
用于替换您定位的资源。这意味着:
PUT api/articles
创建或替换您的所有文章,并且:
PUT api/articles/id
创建或替换文章' id'。