2013-02-12 100 views
6

什么是最合适的HTTP状态代码给到客户表示“你的要求是好的,但它仍然是一个进展;检查回来不久,在相同的位置“。最合适的HTTP状态代码

例如,假设客户端提交开始重查询的初始请求,服务器立即返回客户端可以定期轮询结果的URL。在客户端在作业完成之前调用此URL的情况下,返回的最合适的HTTP状态代码是什么?

202接受将是我的第一个冲动。这是最好的吗?还是在REST接口中有更好的习惯?

回答

16

对我来说,202接受将是最好的一段路要走。

见W3C网站上的documentation

10.2.3 202接受

的请求已被接受处理,但是处理还 尚未完成。该请求最终可能会或可能不会被执行,因为在处理实际发生时它可能是不允许的。 没有工具可以像这样从异步操作中重新发送状态码。

202响应是故意不提交的。它的目的是让 允许服务器接受一些其他进程的请求(可能是一个 面向批处理的进程,每天只运行一次),而不要求 要求用户代理与服务器的连接一直持续到该进程完成的 。实体与此响应 返回应该包括的请求的当前状态和 任一个指向状态监视器或当用户 可以预期该请求被满足的一些估计的指示。