网络协议学习(三)
一、Http
注:URL属于URI,URL是全网唯一的地址,URI是相对的
1、Http演变过程
2、HTTP标准
3、报文格式
(1)请求报文
GET请求
POST请求
POST请求拥有请求体,get请求也可以发送请求,但是是在网址中中输入传递(仍然没有请求体),导致不能发送太长请求,所以一般使用post请求
(2)响应报文
(3)ABNF
报文格式
start-line叫做开始行,requst-line或者status-line(响应报文),内部有换行;
*表示整体,可有可无;
CRLF表示回车换行;
header-file表示键值对数据;
message-body 表示消息体;
OWS表示空格,Octet表示字节
(4) UTF-8编码
4、八种请求方法
注:
(1)get、post负责增删查改 ;
(2)head判断文件大小是否下载
5、头部字段
(1)请求头字段
Referer的运用:
如果是从自己公司的域名访问的图片就可以访问下载,从其他链接过来的禁止下载访问
注:
Range可以实现多线程断点下载,分为多个部分,多线程发送http请求,获取下载的东西,或者当下载中途停止的时候可以记录当前的位置,然后再使用range下载。
Connection:表示是长连接还是短链接,判断是否断开连接;
(2)响应头字段
上述代码根据html和UTF8的方式进行编码
7、常见状态码
8、表单提交
7、跨域(CORS)
(1)前后端分离
浏览器拥有一个同源策略(同源:指协议、域名(IP)、端口相同),它规定了默认情况下,AJAX请求只能发送给同源的URL
所以需要跨域
需要在服务器中设置跨域访问,如下图设置允许63342这个端口跨域访问服务器
当没有设置跨域的时候,后台服务器的东西也会返回给浏览器,但是浏览器不给html加载。
8、Cookie和Session
思考一个问题
直接输入需要登陆之后才能访问的地址域名,怎么重定向到登陆页面,后台服务器怎么判断是否为同一个浏览器发送的请求?所以用到cookie和Session
运用cookie和Session可以进行会话跟踪
注:当登录失败的时候,也会返回cookie,但是session中没有任何数据,等登陆成功又使用这个cookie进行记载登陆成功。
9、代理服务器–Proxy Server
(1)特点
相当于房屋中介
(2)正向代理
代理的对象是客户端
(3)反向代理
代理的对象是服务器
(4) 代理服务器头部字段
(5)CDN
使用CDN之前访问网络
使用CDN之后
使用举例
CDN引用jQury
如果看完对自己有所帮助,请点赞支持谢谢