HTTP报头
一些重要的属性
HOST:描述了服务器(主机)的地址 , 有的时候URL会省略域名,默认访问的地址就是html所在的地址下。
Connection:keep-alive 表示浏览器和服务器之间使用长连接
User-Agent:简称UA,里面就包括了用户设备的操作系统和浏览器的类型和版本,现在主要区分手机和电脑。
Referer:这个属性表示当前页面是从哪个页面跳转过来的,也就是前始页,如果是直接在地址栏中输入url来访问,一般是没有referer的,如果通过点击某个页面的某个标签来访问新页面,那么就是有referer的(广告公司的点击计费会通过这个属性)
Content-Length:body的长度,单位是字节
Conent-Type:body数据的格式 常见取值: x-www-form-urlencoded:body按照query string的方式来组织数据 text/html:按照html来组织数据 text/css:按照css来组织数据 text/plain:纯文本结构 image/gif:body是一个gif image/jpg:body是一个jpg的图片 application/javascript:body是一个js文件
Cookie: 是一个键值对结构的字符串,在浏览器中保存。在每个地址/域名下都有自己的Cookie 。键值对里的内容都是由程序员来约定的 Cookie的内容来自服务器 HTTP响应中,有一个或多个Set-Cookie字段,而这个字段里的内容就会被浏览器保存下来 Cookie会在下次请求时自动 浏览器保存好服务器返回的Cookie之后,如果下次再访问这个服务器,此时请求就会自动的加上Cookie这个字段,字段里的值就是之前服务器这边返回的值 Cookie起到的效果就是识别用户的身份,通常服务器通过Set-Cookie字段返回(用户在登陆成功后),存储在客户端,每个域名下存不同的Cookie,给HTTP发送请求就会自动带上Cookie字段
HTTPS
http是明文传输,特别危险 https 就是基于http引入了一套加密方案 对称加密:加密和解密使用同一份密钥 非对称加密:存在两个密钥,一个公钥,一个私钥 使用公钥加密,使用私钥解密,或者使用私钥加密,使用公钥解密
补充
长连接:一次电话,中间不挂断。 短连接:多次电话,中间挂断,效率较低。
运营商劫持,通过截获请求修改属性来盈利 程序员通过升级成https而达到加密的效果
HTTPS 基于 HTTP 协议进行一层加密 数据之间的传输,通过对称加密来完成,对称加密的密钥是客户端生成的,传输给服务器的 对于对称密钥来说,需要客户端传输给服务器的,传输对称加密密钥的时候,需要再次进行加密,此处使用了非对称加密,这里的非对称加密的公钥和私钥是服务器生成的,服务器通过证书把公钥返回给客户端 客户端这边拿到证书后,就会对证书进行校验,校验的时候就能发现当前的证书是否发生篡改,是否篡改通过 数字签名 机制来保证
|