七层协议的目的:
实现不同的系统互联之间的数据通讯,实现数据的传输.
七层协议分为:
应用层 表示层 会话程 传输层 网络层 数据链路层 物理层
应用层:http/https
传输层:TCP/UDP
TCP:
网络传输协议,面向连接的,长连接,传输的是数据流,确保数据的安全性和完整性,但是数据传输的效率低
UDP:
网络传输协议,是非面向连接的,短连接,传输的是数据包,传输数据是不安全的,可能会造成数据的丢失,传输速度非常快
http(超文本传输协议,端口号是80):
实现从网络传输草文本数据到本地浏览器的传送协议
https(端口号是443):
是http的安全版本,在http的基础上添加了一个SSL(安全套接字层)层,用于web端的安全传送,在传输层对网络连接进行加密,
1.构建了一个安全的数据传输通道.
2.保证网站的真实性和有效性
https协议需要有一个证书(CA证书):
由专门的证书机构颁发的,也可以自己生成,但是访问的时候会提示连接不安全
URL介绍:
URI:统一资源标志符
URN:统一资源名称
URL:统一资源定位符
URI是URN和URL的父类
URL的组成部分:
scheme:指的是协议(https/http)
host:值得是服务器的ip或者域名
port:指的是端口号
path:资源路径
query_string:url地址后面的查询参数
anchor(锚点):可以指定要跳转的位置
get:只是用于从服务器获取数据,再url连接后面可能会跟一些查询参数
post:向服务器端提交数据,数据会放在请求体中,一般用于添加或者修改数据
delete:用来删除数据
put:更新整个资源(用来做数据的更新)
patch:(更新资源)(局部数据的更新)
对比:get和post请求的区别
1.使用场景:get从服务器端获取数据,post请求向服务器端提交数据
2.安全性:get请求参数只拼接在url地址上,post请求会将参数放在
请求体中,(注意:不要误认为只要url地址后面添加了参数就是一个get请求)
3.get请求的url是有长度限制的,post的请求体中可以添加很多字段
常见的请求头参数:
User-Agent:这个是设置浏览器
(设置这个参数模拟浏览器请求对方服务器)
Cookie:保存在客户端中,保存的是用户信息
Referer:告诉服务器,当前请求是从哪个界面跳转过来的(防盗链)
Accept:可以接受的数据类型....
Cookie和Session:
目的保持会话
http请求是无状态的,每一次请求断开后,下一次请求就认为是一个新的请求,为了维持请求状态就用到了Cookie和Session
Cookie:保存在客户端的,记录信息确定用户的身份
Session:保存在服务端的,同样是记录信息确定用户身份
常见的请求状态码:
200:请求成功
3xx:重定向
301:永久重定向
302:临时重定向
4xx:客户端请求错误
400:请求错误,服务器无法解析
401:未授权,没有进行身份验证
403:服务器拒绝访问
404:访问的页面不存在
405:请求方式不允许
408:请求超时
5xx:服务端错误
500:服务端内部错误
501:服务器暂时不具备完成请求的功能
503:服务器不可用