HTTP
1、HTTP概念
Http(超文本传输协议)是一个简单的请求–响应歇一,它通常运行在Tcp上
- 文本:html,字符串。。。
- 超文本:图片、音乐、视频、定位、地图。。。
- 80
https:安全的(443)
2、两个时代
http1.0
HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源断开连接
http2.0
HTTP/1.1:客户端与服务器连接后,可以获得多个web资源。
3、Http请求
客户端-----发请求(request)-----服务器
例如百度请求:
Request URL: https://www.baidu.com/ 请求地址
Request Method: GET 请求方法Post/Get
Status Code: 200 OK 状态码:200
Remote Address: 39.156.66.14:443 远程地址加端口:
Referrer Policy: no-referrer-when-downgrade
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
**Get:**请求能够携带的参数比较少,大小有限制,会在浏览器得URL地址栏显示数据内容、不安全、但高效;
**Post:**请求能够携带的参数没有限制,大小没有限制,不会在浏览器得URL地址栏显示数据内容、安全、但不高效;
(2)、消息头
Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:告诉浏览器,支持哪种编码格式 GBK、UTF-8、GB2312、ISO8859-1
Accept-Language:告诉浏览器,它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成时断开还是保持连接
HOST:主机。。。
4、Http响应
服务器-----响应(response)-----客户端
百度:
Cache-Control: private 缓存控制
Connection: keep-alive 连接
Content-Encoding: gzip 编码:windows
Content-Type: text/html;charset=utf-8 文本/html,字符编码
(1)、响应体
Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:告诉浏览器,支持哪种编码格式 GBK、UTF-8、GB2312、ISO8859-1
Accept-Language:告诉浏览器,它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成时断开还是保持连接
HOST:主机。。。
Reflesh:告诉客户端多久刷新一次
Location:让网页重新定位
(2)、响应状态码
200:请求相应成功
3XX:请求重定向
- 重定向:你重新到我给你新的位置
4XX:找不到资源,不是错误(404)
- 资源不存在;
5XX:服务器代码错误(500)(502:网关错误)