【问题标题】:When Updating a resource, what HTTP Status Code is returned when the update is successful?更新资源时,更新成功返回什么HTTP状态码?
【发布时间】:2012-05-08 11:21:11
【问题描述】:

所以我有一个网站接受HTTP-PUT 的特定资源,例如。 /contact 这将允许消费者更新联系人,假设他们已通过验证。

所以我更新了记录,一切都很好..现在我需要向消费者返回一些东西。

我应该返回什么 HTTP 状态码?

如果这是一个HTTP-POST(即创建一个-new-资源),那么我将返回一个201 Created 并添加一个Location 标头属性。

但是 .. 我找不到任何关于如何更新更新的线索。

干杯:)

【问题讨论】:

  • 非常好的问题,看起来没有标准的 HTTP 代码,所以我只返回 200 OK。

标签: rest http-post http-status-codes http-put


【解决方案1】:

如果您要返回操作的表示,则 200 尤其合适(尽管在 its description of 200 OK 中奇怪的是,工作正在进行但接近最后调用“HTTP bis”没有提到 PUT)。

如果您没有返回任何类型的表示,请使用204 No Content 向客户端表明它不需要更改其当前的“文档视图”。

【讨论】:

  • 动作的表示是什么?它是更新资源的表示还是类似于“Blablabla 已成功更新”
  • 操作的表示将是“blablabla 成功更新”,通常只有在它包含 a) 发生的事情的详细信息(如果对客户有用,但尤其是 b) 指向下一步做什么的链接时才有意义
【解决方案2】:

200 是适当的状态代码,假设 PUT 只进行了更新而没有创建资源。

【讨论】:

    猜你喜欢
    • 2020-03-05
    • 2023-03-21
    • 1970-01-01
    • 2019-09-05
    • 1970-01-01
    • 2021-09-20
    • 2015-06-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多