HTTP的协议的概述
协议(超文本协议):
什么是协议:规定双方需要遵守的规则.
HTTP协议:
什么是HTTP协议:用来规定浏览器与服务器之前需要遵守的规则.
HTTP协议的作用:规范浏览器和服务器之间的数据传递.
HTTP协议的特点:
http底层是用的socket
基于请求和响应的模型.
必须先有请求后有响应.
请求和响应必须成对出现.
默认的端口号是80.
HTTP协议的版本:
1.0 :每次响应后即刻关闭了连接.
1.1 :现在使用.不是每次响应后挂断,等待长时间以后没有请求会挂断.
HTTP协议的详解
请求部分
- 请求行
1.提交方式:
提交方式有很多,常用的GET和POST:
GET和POST的区别:
GET的提交的参数会显示到地址栏上,而POST不显示.
GET往往是有大小限制的,而POST没有大小的限制.
GET没有请求体,而POST有请求体.
文件上传一定是post.
2.提交路径: 自己写好的路径
3.协议版本: 1.1
- 请求头
都是键值对的形式显示的.一般一个key对应一个value,也有个别的是一个key对应多个value.
User-Agent :代表浏览器的类型. --- 文件下载:下载中文文件:IE使用URLEncodor进行编码,而Firefox使用Base64编码.
Referer :代表的是网页的来源. --- 防盗链.
If-Modified-Since :通常与响应中的头Last-Modified一起使用查找本地缓存.
- 请求体
就是POST提交方式的提交的参数.
参数之间用&符号隔开(get的第一个是用?隔开)
响应部分
响应行:
1.协议版本
2.状态码 :
200 :成功
302 :重定向
304 :查找本地缓存
404 :资源不存在
500 :服务器内部错误
3.状态码描述
响应头:键值对,一般一个key对应一个value,也有一个key对应多个value.
Last-Modified :与请求中的If-Modified-Since一起使用查找本地缓存.
Content-Dispostion :文件下载的使用使用的一个头信息.
Location :重定向的跳转的路径.
Refresh :定时刷新/定时跳转.
响应体:显示浏览器的页面的内容.