【问题标题】:Most appropriate HTTP status code for "job in progress"“作业进行中”的最合适的 HTTP 状态代码
【发布时间】:2013-02-12 03:35:47
【问题描述】:

提供给客户端的最合适的 HTTP 状态代码是什么,以表示“您的请求很好,但仍在进行中;请稍后在完全相同的地方查看。”

例如,假设客户端提交了一个初始请求以启动一个繁重的查询,服务器立即返回一个 URL,客户端可以定期轮询该结果以获取结果。如果客户端在作业完成之前调用此 URL,返回的最合适的 HTTP 状态码是什么?

202 Accepted 将是我的第一个冲动。这是最好的,还是有更好的,在 REST 接口中更符合此目的?

【问题讨论】:

    标签: http rest response httpresponse http-status-codes


    【解决方案1】:

    对我来说,202 Accepted 是最好的选择。

    请参阅 W3C 网站上的documentation

    10.2.3 202 接受

    请求已被接受处理,但处理已 没有完成。请求最终可能会或可能不会被执行 上,因为在实际进行处理时可能不允许这样做。 无法从异步重新发送状态码 像这样的操作。

    202 响应是故意不置可否的。其目的是 允许服务器接受对其他进程的请求(可能是 面向批处理的过程,每天只运行一次) 要求用户代理与服务器的连接一直持续到 该过程完成。随此响应返回的实体 应包括请求当前状态的指示和 指向状态监视器的指针或用户何时估计 可以期望请求得到满足。

    【讨论】:

      猜你喜欢
      • 2011-06-14
      • 1970-01-01
      • 1970-01-01
      • 2019-12-19
      • 2015-03-14
      • 2021-04-07
      • 1970-01-01
      • 2012-05-21
      相关资源
      最近更新 更多