http
4. Http
4.1 什么是Http
- 超文本传输协议(Hypertext Transfer Protocol,HTTP)
- 是一个简单的请求-响应协议,它通常运行在TCP之上。
- 它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
- 请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当。
- HTTP 超文本传输协议
- 文本: html 字符串
- 超文本: 图片 音乐 视频 地图 定位
- 端口: 80
- HTTPS: 安全的
- 端口: 443
4.2 两个时代
-
http/1.0 客户端可以与web服务器连接后, 获得一个web资源, 断开连接
-
http/1.1 客户端与web服务器连接后, 可以不马上断开连接, 获得多个web资源
4.3 请求
Request URL: https://www.baidu.com/
Request Method: GET
Status Code: 200 OK
Remote Address: 182.61.200.6:443
Referrer Policy: strict-origin-when-cross-origin
Accept:text/html
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Cache-Control:max-age=0
Connection: keep-alive
Host:
1. 请求头
- 请求行中的请求方式:GET
- 请求方式: GET POST HEAD DELETE PUT TRACT
- get: 请求能够携带的参数比较少, 大小有限制, 会在浏览器url显示数据内容, 不安全, 但高效
- post: 请求能够携带的参数没限制, 大小没限制, 会在浏览器ur不会l显示数据内容, 安全, 但不高效
2. 消息头
Accept: //告诉浏览器,它所支持的数据类型
Accept-Language: //支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Encoding: // 告诉浏览器它的语言环境
Cache-Control:// 缓存控制
Connection: //请求完是断开连接还是保持连接
4.4 响应
Request URL: https://www.baidu.com/
Request Method: GET
Status Code: 200 OK
Remote Address: 182.61.200.6:443
Referrer Policy: strict-origin-when-cross-origin
Cache-Control: private //缓存控制
Connection: keep-alive //连接:可用
Content-Encoding: gzip
Content-Type: text/html;charset=utf-8
HOST; 主机..
refresh: 多久刷新一次
location: 让网页重新定位
2. 响应状态码
200: 成功
3xx: 请求重定向 到新位置去
4xx: 找不到资源 资源不存在 404
5xx: 服务器代码错误 502网关错误
常见面试题:
当你的浏览器中地址栏输入地址并回车的一瞬间到页面展示, 经历了什么?