1. URL统一资源定位符
a) URL的结构
https使用https协议
www.xxxxx.com:443主机名(Host):端口
login/login.php资源路径
?文件名与GET参数之间用?分隔
user=123GET方式向服务器发送一个参数名为user,值为123
&多个参数之间用&分隔
b) 相对URL与绝对URL
c) URL编码 不是加密,就是对中文转换为字节,再转为16进制用#隔开
2. 协议头
a) 请求头、响应头
b) 起始行、首部字段、包体
c) 常规协议头、自定义协议头 (学会区分)
3.两种协议头
//访问方式 资源路径和GET参数 协议/版本号
GET /v2/getpublickey?x=100&y=200 HTTP/1.1
//主机名
Host: passport.xxxxx.com
//浏览器接受数据类型
Accept: */*
//表示长连接
Connection: keep-alive
//浏览器接受的语言
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
//浏览器支持的编码,一般附加协议头的时候删掉
Accept-Encoding: gzip, deflate, br
//用户代理,服务器可以根据这个来识别是哪个浏览器
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0
//来路,GET和POST中都会出现,表示这个请求是从哪个页面发出的,可能会有会变化的值 要特别注意
Referer: https://www.xxxxx.com/?user=123456&pwd=1212121
Cookie: XXXXXID=4A89DBBC382B25D9A43D12C4AB0151FD:FG=1
4. cookie的分类
服务器返回Set-Cookie
本地代码生成
5. cookie的作用
识别身份(验证码)
判断是否登录状态
6. cookie的结构
名1=值1; 名2=值2; 名3=值3
7. 合并更新步骤
a) 新cookie, 去除无效cookie
b) 在新cookie里,寻找是否存在旧cookie里的名字, 存在就用新的,丢掉旧的
c) 两cookie组合到一个文本型变量中
8. 前端会用JS生成很多cookie,但是并非所有cookie都会检测
比如Hm_lvt开头的一般没啥用 ,在安卓中先考虑协议头,提交失败最后才考虑 cookie