网络协议
http协议 tcp协议处于osi七层模型 那一层
http第七层 应用层
tcp 第四层 传输层
http协议 get和post 区别
后退按钮和刷新时get没有变化,post数据会重新提交
get可以收藏为书签 post不可能被收藏为书签
get保存在历史当中,post不会
get可以被浏览器缓存,post不能被缓存
get请求 编码是 application/www-form-url-icded
post motipart-.form-date 为二进制数据使用多重编码
get长度限制2048个字符 post没有限制
get只允许 asc2这样的 post没有限制
get安全性较差 post较高
get对所有人可见,post不会显示在 url中
http/1.1中
状态码
200 ok
204 已成功处理 返回报文中不含主题部分
206 部分的内容 客户端进行了范围请求 服务端成功执行了get请求
301 跳转 永久性重定向 已被分配 新的uri 以后用新的
302临时性重定向 已被分配 新的uri 本次用新的
303 对应资源在另一个uri 应使用get定向获取请求的资源
304 客户端发送附带条件的请求时 服务器端允许请求访问资源 但因发生请求未满足的条件的情况后
307 临时性重定向 已被分配 新的uri 本次用新的
400 请求报文中 语法错误
401 发送请求需要 http认证的信息
403 服务器拒绝
404 服务器找不到对应资源
500 执行请求时发生错误
503.服务器 超负载或停机维护 无法处理请求
含义
五类
1开头 信息类状态码 接受请求正在处理
2 成功 正常处理完毕
3 重定向 需要进行附加操作 以完成请求
4客户端错误 服务器无法处理请求
5服务端错误 服务器处理请求出错了
osi七层模型
应用层 (Application):
网络服务与最终用户的一个接口。
协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
表示层
数据的表示、安全、压缩。
会话层
建立、管理、终止会话
传输层
定义传输数据的协议端口号,以及流控和差错效验。
协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层
网络层
进行逻辑地址寻址,实现不同网络之间的路径选择。
数据链路层
建立逻辑连接、进行硬件地址寻址、差错效验等功能
物理层
建立、维护、断开物理连接。
http协议的工作特点和工作原理
基于b/s模式
通信开销小,简单快速,传输成本低
使用灵活吗,可使用超文本传输协议
节省传输时间
无状态
http协议常见请求响应头和请求方法
Content-Type 请求与实体对应的mime信息
Accept 指定客户端能接受的内容 类型
Origin 最初的请求来源于那 主要用的是post请求
Cookie http请求发起时发送给服务器端cookie的值
Cache-Control 指定请求和响应的缓存机制
User-Agent 用户信息
Referrer 上级请求路径
X-Forwarded-For 请求端真实ip 代理
Access-Control-Allow-Origin 允许特定的域名进行访问 跨域
Last-Modified 请求资源的最后响应时间
http协议的工作原理
工作原理
客户端发送请求给服务器,创建一个tcp链接,指定端口号,默认80,链接到服务器 服务器监听浏览器请求,一旦监听到客户端请求 分析请求类型后,服务器端会向客户端返回状态信息和数据内容
https协议的工作原理
https是一种基于ssl/tls的http协议,所有的http数据都是在 ssl/tls协议封装之上传输的
https协议在http协议的基础上,添加了 ssl/tls握手以及数据加密传输,也属于应用层协议
http协议的请求方法
get 显示请求指定资源的读取 用于数据的读取 查
post 向指定资源提交数据 请求服务器处理 创建新的资源或修改现有资源 创建
head 显示请求指定资源的读取 只会回传头信息
options 用于客户端查看服务器性能 用*代替资源名称
put 向资源上传内容 取代指定资源 修改
delete 删除指定资源 删除
trace 请求服务器 回显请求信息 用于http请求的测试或诊断
常见的网络协议及端口
ftp 文件传输协议 21 文件下载上传
telnet 远程登录的端口 基于dos模式下的通讯服务 23
smtp 25 邮件传输协议
pop3 110 接受邮件
http 超文本传输协议 80
dns 用于域名解析服务 53