Response 组成
响应行(Response Line)、响应头(Response Headers)、响应体(Response Body)
HTTP/1.1
或 HTTP/2
。100 Continue
)200 OK
,表示请求成功)301 Moved Permanently
,表示资源已永久移动)404 Not Found
,表示请求的资源未找到)500 Internal Server Error
,表示服务器内部错误)HTTP/1.1 200 OK
Content-Type: 指定响应的内容类型,例如text/html、application/json等。
Content-Length: 指定响应正文的长度,以字节为单位。
Content-Encoding: 指定响应正文的编码方式,如gzip、deflate等。
Cache-Control: 指定响应的缓存控制策略,如no-cache、max-age等。
Expires: 指定响应的过期时间,用于缓存控制。
Last-Modified: 指定响应内容的最后修改时间。
ETag: 指定响应内容的实体标签,用于缓存验证。
Server: 指定服务器的软件和版本信息。
Set-Cookie: 设置响应的Cookie值,用于在客户端存储数据。
Location: 指定重定向的目标URL。
Refresh: 多少秒后重定向到某个网站。
Date: 消息发送的时间,时间的描述格式由rfc822(电⼦邮件的标准格式)定义。
响应体包含了服务器返回给客户端的数据,可能是HTML文档、JSON数据、图像等。响应体的内容格式通常取决于Content-Type
响应头的设置。
// JSON格式响应体示例:
{
"message": "Login successful",
"user": {
"id": 1,
"username": "example"
}
}
HTTP响应示例:
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 123
Server: Apache/2.4.1
Date: Wed, 25 Oct 2023 12:00:00 GMT
{
"message": "Login successful",
"user": {
"id": 1,
"username": "example"
}
}
状态码详细说明
200 OK
:请求成功,通常返回所请求的数据。201 Created
:请求成功,资源已创建(如POST
请求)。204 No Content
:请求成功,但没有返回内容。301 Moved Permanently
:请求的资源已被永久移动到新位置。302 Found
:请求的资源临时位于不同的URI。304 Not Modified
:资源未修改,客户端可使用缓存。400 Bad Request
:请求无效,服务器无法理解。401 Unauthorized
:请求未授权,需提供认证信息。403 Forbidden
:服务器理解请求,但拒绝处理。404 Not Found
:请求的资源未找到。500 Internal Server Error
:服务器遇到意外情况,无法完成请求。502 Bad Gateway
:作为网关或代理的服务器收到无效响应。503 Service Unavailable
:服务器无法处理请求,通常由于过载或维护。因篇幅问题不能全部显示,请点此查看更多更全内容