HTTP协议的介绍
客户端和服务器之间通讯时,发送的数据,需要遵守的规则,叫HTTP协议
HTTP:超文本传输协议
(超文本:比普通文本更加强大)
(传输协议:客户端和服务端的通信规则)
HTTP协议是基于TCP/IP协议的
客户端服务端的传输关系
客户端 ->请求-> 服务器
服务器 ->响应-> 客户端
注意:JavaScript、CSS、图片资源会自动发送请求
HTTP协议的请求
a.请求的组成部分:
1.请求行
请求方式 提交路径(提交参数)HTTP/版本号
2.请求头
Accept:客户端浏览器所支持的MIME类型
Accept-Encoding:客户端浏览器所支持的压缩编码格式。最常用的就是gzip压缩
Accept-Language:客户端浏览器所支持的语言。一般都是zh_CN或en_US等
Referer:告知服务器,当前请求的来源
Content-Type:请求正文所支持的MIME类型
Content-Length:请求正文长度
User-Agent:浏览器相关信息
Connection:连接的状态。Keep-Alive保持连接
If-Modified-Since:客户端浏览器缓存文件的最后修改时间
Cookie:会话管理相关,非常重要
3.请求空行
普通换行,用于区分请求头和请求体
4.请求体
只有POST提交方式才有请求体,用于显示提交参数
b.请求的方式:
1.GET
2.POST
注意:只有POST请求方式才有请求体
HTTP协议的响应
响应的组成部分:
1.响应行
请求方式HTTP/版本号 状态码 状态描述
常见状态码:
状态码 说明
200 一切OK
302/307 请求重定向,两次请求,地址栏发生变化
304 请求资源未发生变化,使用缓存
404 请求资源未找到
500 服务器错误
2.响应头
Location:用于重定向接受者到一个新的位置
Content-Length:响应体的长度
Content-Type:返回内容的MIME类型
Content-Disposition:告知客户端浏览器,以下载的方式打开响应正文
Refresh:定时刷新
Server:web服务器软件名称
Expires:-1:服务器资源到客户端浏览器后的缓存时间
Set-Cookie:会话管理相关,非常的重要
Cath-Control:no-catch:不要缓存
Last-Modified:服务器资源的最后修改时间
4.响应体
MIME类型说明
MIME是HTTP协议中数据类型
格式:大类型/小类型 并与某一种文件的扩展名相对应