3.HTTP响应消息
(1)消息格式
- HTTP-Version:服务器响应的HTTP版本号
- Status-Code:状态码
- Request——Phrase:状态说明
后面是消息头区(可没有),根据消息实际情况,消息内容可以出现单独的回车或换行符。紧跟着是消息体(可无)
(2)HTTP响应状态码
HTTP响应状态码类别
4.HTTP消息头
在HTTP请求消息和响应消息中通常都会包含一个或多个消息头,消息头通常被称为“字段(Field)”,消息头是客户机与服务器进行参数协商,传递参数,描述消息体等的重要实体。
每个消息体头的格式:
字段名(Field Name): 字段值(Field Value)
字段名+冒号+空格+字段值,字段名不区分大小写
(1)内容协商消息头
“内容协商”是指当资源存在多种表现形式时,从中选择对用户而言“最合适”的表现形式。
HTTP有两种内容协商的方式:服务器驱动协商和客户驱动协商。
进行的协商是服务器驱动协商方式有:
- Accept
- Accept-Charset
- Accept-Encoding
- Accept-Language
进行的协商是客户驱动协商方式有:
- Allow
(2)缓存控制消息头
在HTTP西医实际使用中,为了提高资源访问速度,通常会采用缓存(Cache)机制,把一些资源临时放在访问速度较快的地方。
- Cache-Control字段:可用于请求消息和响应消息
- Pragma字段:可用于请求消息和响应消息
(3)实体描述消息头
HTTP协议定义了相应的消息头字段描述这些数据实体。可用于请求消息和相应消息
- Content-Type字段:用于描述消息中数据实体的媒体类型
- Content-Length字段:描述消息中数据实体的大小
(4)条件控制消息头
HTTP协议中设计了一系列的条件控制消息头。
- If-Match字段:用于请求消息头
- If-Modified-Since字段:用于消息头
(5)其它消息头
- Host字段:用于请求消息,指明客户机请求的资源所在的主机及端口号
- Location字段:用于响应消息
- Date字段:可用于请求和响应消息,表示消息产生的时间
- Last-Modified字段:都可。描述消息体中的数据实体最后被修改的时间
- User-Agent字段:用于请求消息,描述客户机的信息
- Referer字段:用于请求字段,指明请求的URI是哪里获得