431 请求头字段过大

HTTP 431 Request Header Fields Too Large 客户端错误响应 状态码表示服务器拒绝处理请求,因为请求的 HTTP 头部 太长。可以在减小请求头的大小后重新提交请求。

当请求头部的总大小过大或单个头部字段过大时,都可以使用 431。为了帮助遇到此错误的客户端,请在响应正文中指示是哪种问题,并且理想情况下,说明哪些头部过大。这可以让用户尝试解决问题,例如清除 Cookie。

如果出现以下情况,服务器通常会生成此状态

状态

http
431 Request Header Fields Too Large

示例

头部字段过大

在以下示例中,请求中的 Cookie 头部过大

http
GET /doc HTTP/1.1
Host: example.com
Cookie: cookie1=value1; cookie2=value2; cookie3=[…]

服务器会响应一条消息,指示哪个头部存在问题

http
HTTP/1.1 431 Request Header Fields Too Large
Content-Type: text/html

<!doctype html>
  <head>
    <title>Request Header Fields Too Large</title>
  </head>
  <body>
    <h1>Request Header Fields Too Large</h1>
    <p>The "Cookie" header was too large.</p>
  </body>
</html>

规范

规范
RFC 6585
# 第 5 节

另请参阅