HTTP协议
什么是HTTP?
HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。
- 文本: html,字符串~ ...
- 超文本:图片,音乐, 视频, 定位, 地图
- 端口: 80
- HTTPS: 安全的HTTP 443
- 两个版本:
HTTP请求
请求行
请求方式: GET/POST HEAD/DELEDE/PUT/TRACT
- get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL栏显示数据内容,不安全,但是高效。
- post: 请求能够携带的参数限制,大小没有有限制,会在浏览器的URL栏不会显示数据内容,安全,但不高效。
消息头
- Accept: 告诉浏览器,它所支持的数据类型
- Accept-Encoding:支持的编码格式 UTF-8 GBK GB2312
- Accept-Language: 语言环境
- Cache-Control: 缓存控制
- Connection:请求完成是断开还是保持连接
- Cookie:缓存
- Host:主机号
- Refresh: 告诉客户端,多久刷新一次
- Location:让网页重新定位
Request URL: https://www.baidu.com/ //请求地址
Request Method: GET //get方法和post方法
Status Code: 200 OK //状态码
Remote Address: 14.215.177.38:443 // 远程地址
Referrer Policy: no-referrer-when-downgrade
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Accept-Encoding: gzip, deflate, br
Accept-Language: zh,zh-CN;q=0.9
Cache-Control: max-age=0
Connection: keep-alive
Cookie: PSTM=1594296714; BAIDUID=19D8FA91D88C0C015880D299FF456E00:FG=1; BD_UPN=12314753; BIDUPSID=70F48A94E0D47DAD6C644E8FCB359A5D; hide_hotsearch=1; sug=3; ORIGIN=2; bdime=0; MCITY=-%3A; BDUSS=UcxcWNxS1ZkWlAxMWIySzJkRlJqS0NVaEphVFJrWjRLQ0FqYVJVc3hJMTloMWxmRVFBQUFBJCQAAAAAAAAAAAEAAABtMSV1x-XT8NrkxLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH36MV99-jFfZ; BDUSS_BFESS=UcxcWNxS1ZkWlAxMWIySzJkRlJqS0NVaEphVFJrWjRLQ0FqYVJVc3hJMTloMWxmRVFBQUFBJCQAAAAAAAAAAAEAAABtMSV1x-XT8NrkxLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH36MV99-jFfZ; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BDRCVFR[feWj1Vr5u3D]=I67x6TjHwwYf0; delPer=0; BD_CK_SAM=1; PSINO=6; BD_HOME=1; ZD_ENTRY=baidu; H_PS_PSSID=1457_32569_32531_31660_32045_32117_31708_26350_32506; sugstore=0
Host: www.baidu.com
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36
HTTP响应
服务器 -----响应请求(response)---- 客户端
响应状态码
200: 请求响应成功 200
3xx: 请求重定向
4xx: 找不到资源 404
5xx: 服务器代码错误 500 502(网关错误)
Cache-Control: private //缓存控制
Connection: keep-alive //连接:
Content-Encoding: gzip //编码
Content-Type: text/html;charset=utf-8 //类型
Date: Thu, 20 Aug 2020 05:32:58 GMT
Expires: Thu, 20 Aug 2020 05:32:58 GMT
Server: BWS/1.1
Set-Cookie: BDSVRTM=453; path=/
Set-Cookie: BD_HOME=1; path=/
Set-Cookie: H_PS_PSSID=1457_32569_32536_31660_32045_32117_31708_26350_32506; path=/; domain=.baidu.com
Strict-Transport-Security: max-age=172800
Traceid: 1597901578043997236210089786624016751666
Transfer-Encoding: chunked
X-Ua-Compatible: IE=Edge,chrome=1
面试题:当你的浏览器中地址栏,输入地址并回车的一瞬间到页面能够展示回来,经历了什么?