HTTP协议

1.HTTP概念

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在 TCP 之上。 它指定了客户端可能发送给服务器什么样的消息(request)以及得到什么样的响应。(response)

2.HTTP构成

在这里插入图片描述
在这里插入图片描述
空行解决了报头和有效载荷分离的问题
content-length明确了正文的长度,解决了包与包之间的边界问题

3.HTTP协议格式

(1)HTTP方法

GET 获取资源,这种方法通常不用写正文 支持HTTP/1.0    HTTP/1.1
POST 传输实体主体 该方法通常要加正文 支持HTTP/1.0    HTTP/1.1
PUT 传输文件 支持HTTP/1.0     HTTP/1.1
HEAD 获得报文首部 支持HTTP1.0   HTTP/1.1
DELETE 删除文件 支持HTTP1.0   HTTP/1.1
OPTIONS 询问支持的方法 支持HTTP1.1 
TRACE 追踪路径 支持HTTP1.1
CONNECT 要求用隧道协议连接代理 支持HTTP1.1
LINK 建立和资源之间的联系 支持HTTP1.0
UNLINK 断开连接关系  支持HTTP1.0

(2)HTTP状态码

在这里插入图片描述

常见的状态码:

100:Continue  继续。客户端应继续向其请求
200:OK请求成功
301:Moved Permanently永久重定向,资源(网页等)被永久转移到其他URL
302:Found临时重定向
404:Not Found请求的资源(网页等)不存在
500:Internal Server Error内部服务器错误,无法完成请求

4.HTTP基本特征

1.无连接
TCP建立连接和HTTP无关,HTTP直接向对方发送HTTP请求即可
2.无状态:
HTTP本身是无状态的,并不会记录用户的任何信息,只进行request 与response
这样会带来较差的用户体验
因此引进了Cookie 和 Session 的技术支持
Cookie:本质是浏览器中的一个文件,分为内存级和硬盘级
Session:文件是服务器中通过sid找到的一个文件,而sid被保存到了Cookie中
3.简单快速
短链接:进行文本传输
长连接:客户端和服务器建立一次连接之后,可以在这条链接上进行多次请求/响应操作,提高通信效率

5.浅谈https

https是在传输层和应用层之间加了一层安全层(安全套接字):SSL/TLS用来加密和解密
SSL:早期非标准  TLS:后期标准版

加密:

1.对称加密(密钥1个)
2.非对称加密:RSA,公钥,私钥。通常情况下公钥用来加密,私钥用来解密

https秘钥协商过程

服务器向客户端发送一个公钥,客户端用公钥对对称密钥加密将其发送给服务器,服务器然后对其解密得到对称密钥。

对称加密:速度快,但是不安全
非对称加密:效率比较低,但是相对安全
因此通常情况下,先利用非对称加密来获取对称密钥,然后使用对称加密来实现加密解密

中间信息被篡改问题(数据摘要+数据签名(指纹))
文本通过hash算法被设置成一段定长的字符序列(数据摘要),再用密钥对数据摘要加密形成指纹或者数据签名。
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

倚心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值