4、Http
4.1、什么是Http
HTTP(超文本传输协议)是一个简单的请求-相应协议,它通常运行在TCP之上。
- 文本:html,字符串,~…
- 超文本:图片,音乐,视频,定位,地图…
- 80
Https:安全的
- 443
4.2、两个时代
- http 1.0
- HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接
- http 2.0
- HTTP/1.1:客户端可以与web服务器连接后,可以获得多个web资源
4.3、Http请求
- 客户端—发请求(Request)— 服务器
百度:
Request URL: https://www.baidu.com/ 请求地址
Request Method: GET get方法/post方法
Status Code: 200 OK 状态码:200
Remote(远程) Address: 110.242.68.4:443
Accept: text/html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9 语言
Cache-Control: max-age=0
Connection: keep-alive
1、请求行
- 请求行中的请求方式:GET
- 请求方式:GET,POST,HEAD,DELETE,PUT,TRACT…
- GET:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
- POST:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效
2、消息头
Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Language: 告诉浏览器,它的语言环境
Cache-Control: 缓存控制
Connection: 告诉浏览器,请求完成是断开还是保持连接
Host:主机 ...
4.4、Http响应
- 服务器—响应—客户端
百度:
Cache-Control: private 缓存控制
Connection: keep-alive 连接
Content-Encoding: gzip 编码
Content-Type: text/html;charset=utf-8 类型
1.响应体
Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持哪种编码格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Language: 告诉浏览器,它的语言环境
Cache-Control: 缓存控制
Connection: 告诉浏览器,请求完成是断开还是保持连接
Host:主机 ...
Refresh:告诉客户端,多久刷新一次
Location:让网页重新定位
2.响应状态码(重点)
200:请求响应成功 200
3xx:请求重定向
- 重定向:你重新到我给你的新的位置去
4xx:找不到资源 404
- 资源不存在
5xx:服务器代码错误 500 502:网关错误
常见面试题:
当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?
彩蛋
1.浏览器设置,使百度首页乱码
首先打开需要查看的网站,接着摁快捷键F12
或页面空白处右击选择检查
,在右上角菜单栏中点击console
,输入
document.charset
chrome设置当前访问网页编码:
参考:https://blog.csdn.net/hbysj/article/details/80499908
应该是使用人较少,chrome新版废弃了,需要在chrome商店安装charset组件
如果用360浏览器,右键可以直接使用
chrome离线安装charset插件:
参考:https://blog.csdn.net/q258523454/article/details/90929744
修改后乱码:
2.查看windows网关设置