HTTPQUERY
English

102 Processing

用法

当服务器发送 102 Processing 状态码时,客户端会保持 HTTP 连接并等待最终响应到达。服务器最终必须返回最终响应,否则将发生真正的超时。

102 Processing 状态码已不再属于当前的 HTTP 规范,不过该代码仍以其最初的 WebDAV 规范作为参考,注册在 IANA HTTP 状态码注册表中。实践中服务器仍在使用该代码。实现良好的 HTTP 客户端会忽略无法识别的信息类状态消息,因此该响应不会对缺乏显式支持的客户端产生负面影响。

注意

在最终 HTTP 响应之前,会预先发送多个 102 Processing 状态更新。

SEO 影响

搜索爬虫会忽略中间的 102 Processing 响应,只处理最终响应。该代码对抓取或排名没有影响。

示例

客户端请求一个 sample.pdf 文件,服务器返回一个状态码,表示处理耗时比通常更久。稍作等待后,服务器再发送一次处理更新。又一次延迟后,服务器发送最终响应。

请求

GET /sample.pdf HTTP/1.1
Host: example.com

响应

HTTP/1.1 102 Processing

<there is a short pause in the transmission>
HTTP/1.1 102 Processing

<there is a short pause in the transmission>
HTTP/1.1 200 OK
Content-Type: application/pdf
Content-Length: 10000

<message body will follow>

代码参考

.NET

HttpStatusCode.Processing

Rust

http::StatusCode::PROCESSING

Rails

:processing

Go

http.StatusProcessing

Symfony

Response::HTTP_PROCESSING

Python3.5+

http.HTTPStatus.PROCESSING

Apache HttpComponents Core

org.apache.hc.core5.http.HttpStatus.SC_PROCESSING

Angular

@angular/common/http/HttpStatusCode.Processing