HTTP响应报文

  • 响应报文

HTTP响应报文主要由状态行、响应头部、空行和响应数据组成。

1、状态行

3部分组成:协议版本、状态码、状态码描述。

协议版本的格式为:HTTP/主版本号.次版本号,常用的有HTTP/1.0和HTTP/1.1

状态码

5种可能取值:

1xx:指示信息--表示请求已接收,继续处理。

2xx:成功--表示请求已被成功接收、理解、接受。

3xx:重定向--要完成请求必须进行更进一步的操作。

4xx:客户端错误--请求有语法错误或请求无法实现。

5xx:服务器错误--服务器未能实现合法的请求。

常见例子如:

200    响应成功

302    跳转,跳转地址通过响应头中的Location属性指定(JSP中Forward和Redirect之间的区别)

400    Bad Request客服端请求有语法错误,不能被服务器识别

401    Unauthorized请求未经授权,这个状态码必须和WWW-Authenticate报头域一起使用

403    Forbidden服务器收到请求,但是拒绝提供服务(认证失败)

404    Not Found请求资源不存在

500    Internal Server Error服务器内部错误

503    Server Unavailable服务器当前不能处理客户端的请求,一段时间后可能恢复正常。

2、响应头部

与请求头部类似,为响应报文添加了一些附加信息。

响应头 说明
Location 用于重定向接受者到一个新的位置
Server 服务器应用程序软件的名称和版本
Content-Length 响应正文长度
Content-Charset 响应正文使用的编码
Content-Encoding 响应正文使用的压缩格式
Content-Type 响应正文的类型(是图片还是二进制字符串)
Content-Language 响应正文使用的语言
Last-Modified 最后的修改日期及时间
Expires 过期的日期和时间

 

3、响应数据

用于存放需要返回给客户端的数据信息。

例如:

HTTP/1.1 200
Server: nginx
Date: Thu, 22 Nov 2018 05:41:01 GMT
Content-Type: application/json;charset=UTF-8
Connection: keep-alive
Content-Length: 139

{"code":0,"data":{"requestId":"0000400004391542865263601","ts":1542865261748,"groups":[{"impId":0,"ads":[]}],"emptyStatusCode":1501010301}}  

若长生难求以命为注 方冥冥如悟因果殊途 --《长生》
原文地址:https://www.cnblogs.com/hc1hr2/p/10000575.html