http(超文本传输协议):客户端和服务器建立通信连接后,进行数据交互,使用协议进行交流。请求和响应是成对出现的
HTTP 请求
请求完整格式 包括三个部分 : 请求行、头信息、请求体
1、请求行:请求中第一行信息 ---- 包括三个部分 请求方式、资源路径、HTTP协议版本
例如: GET / HTTP/1.1
HTTP请求方式有几种 : POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT
常用两种: GET 、 POST
简析:get和post方式提交区别
Get url地址后携带数据有大小限制 1K ,提交数据在url上显示 * url?name=value&name=value&name=value... 以?分隔url和参数,参数采用键值对格式,多个参数使用& 符合分隔
POST 数据在请求体中,不在url上显示 ,没有数据大小限制
2头信息
头信息: 很多key -value Accept: text/html,image/* ----- 客户端可以接收文件类型
text/html HTML文件 image/* 任意格式图片
Accept-Charset: ISO-8859-1 ----- 客户端可以识别编码字符集
Accept-Encoding: gzip ----- 客户端可以识别压缩数据格式 gzip是一种压缩格式
Accept-Language:zh-cn ----- 客户端浏览器语言
Host: www.***.com:80 ----- 访问服务器地址
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT ----- 该请求的资源在客户端保存最后访问时间 (缓存有关)
Referer: http://www.***.com/***.jsp ---- 上一次请求访问页面地址【Referer可以用来判断是否为盗链】
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) ---- 客户端浏览器类型版本
Connection: close/Keep-Alive ---- 该次请求连接后,连接是保持还是关闭 1.0 关闭 1.1 保持
Date: ---- 请求时间
3请求体
存放客户端提交post 请求 数据
key=value&key=value....
http响应
响应数据 分为三个部分 :状态行、头信息、响应体
1、状态行 分为三个部分: HTTP协议版本、状态码、描述信息
常见状态码
200 请求处理成功
302 客户端进行重定向
304 客户端访问资源没有被修改后,客户端访问本地缓存
404 访问资源不存在
500 服务器内部出错
2、响应头
Location: http://www.it315.org/index.jsp ---- 重定向地址 结合 302 一起使用 * 重定向 两次请求 两次响应
Server:apache tomcat ----- 服务器类型
Content-Encoding: gzip ---- 设置响应数据压缩格式 ----
请求 Accept-Encoding * 如果响应数据经过压缩 传输体积更小,性能更好 【这里可以设置相应数据为压缩数据】
通过设置 tomcat/conf/server.xml 设置响应数据压缩 <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" compressableMimeType="text/html,text/xml,text/plain" compression="on"/> *
Content-Length: 80 ----- 响应数据长度
Content-Language: zh-cn ----- 响应数据语言
Content-Type: text/html; charset=GB2312 ----- 响应数据类型 * 数据类型采用Mime协议规定类型 html文件 ---- text/html、 jpg文件---- image/jpeg * 在 【tomcat/conf/web.xml 中查看文件mime类型】 小技巧
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT ----- 和请求头信息 If-Modified-Since一起使用,控制服务器缓存 【缓存相关】
Refresh: 1;url=http://www.***.com----- 网页自动跳转
Content-Disposition: attachment; filename=aaa.zip ----- 文件下载时指定文件附件名称
3、响应体 通常HTML 文件内容 ---- 如果设置响应体进行gzip压缩,看到gzip压缩内容,压缩以后性能会更好。
小Tips:在google浏览器中 按F12 即可打开调试窗口 ---》选择 Network ---》选择需要查看的链接
即可查看到,如下图所示