HTTP知识梳理

一,一次HTTP请求,程序一般经历的步骤

1)解析域名
2)发起TCP三次握手,建立连接
3)基于TCP发起HTTP请求
4)服务器响应HTTP请求,并返回数据
5)客户端解析返回数据
在这里插入图片描述

二,HTTP几种常用的响应状态码

200:表示成功正常请求
400:语义有误,一般是请求格式不对
401:需求用户验证权限,一般是证书token没通过认证
403:拒绝提供服务
404:资源不存在
500:服务器错误
503:服务器临时维护,过载;可恢复

三,session和cookie的区别

1)存储位置不同,cookie是保存在客户端的数据;session的数据存放在服务器上
2)存储容量不同,单个cookie保存的数据小,一个站点最多保存20个Cookie;对于session来说并没有上限
3)存储方式不同,cookie中只能保管ASCII字符串;session中能够存储任何类型的数据
4)隐私策略不同,cookie对客户端是可见的;session存储在服务器上,对客户端是透明对
5)有效期上不同,cookie可以长期有效存在;session依赖于名为JSESSIONID的cookie,过期时间默认为-1,只需关闭窗口该session就会失效
6)跨域支持上不同,cookie支持跨域名访问;session不支持跨域名访问

四,HTTP分块传送及好处

分块传送是HTTP的一种传输机制,允许服务端发送给客户端的数据分成多个部分,该协议在HTTP/1.1提供
1.HTTP分块传输编码允许服务器为动态生成的内容维持HTTP持久连接
2.分块传输编码允许服务器在最后发送消息头字段。对于那些头字段值在内容被生成之前无法知道的情形非常重要,例如消息的内容要使用散列进行签名
3.HTTP服务器有时使用压缩 (gzip或deflate)以缩短传输花费的时间。分块传输编码可以用来分隔压缩对象的多个部分。在这种情况下,块不是分别压缩的,而是整个负载进行压缩。分块编码有利于一边进行压缩一边发送数据

五,HTTP的长连接

1.长连接是指客户端和服务建立TCP连接后,它们之间的连接会持续存在,不会因为一次HTTP请求后关闭,后续的请求也是用这个连接
2.长连接可以省去TCP的建立和关闭操作,对于频繁请求的客户端适合使用长连接,但是注意恶意的长连接导致服务受损(建议内部服务之间使用)

六,HTTP的安全性以及加强

并非安全,HTTP传输的数据都是明文的,容易被第三方截取;要做安全传输数据,可以使用HTTP的升级版HTTPS协议

七,HTTPS和HTTP的区别

1)http协议的连接是无状态的,明文传输
2)HTTPS是由SSL/TLS+HTTP协议构建的有加密传输、身份认证的网络协议

八,SSL/TLS是什么,HTTPS的安全性是怎样实现的?

1.SSL(Secure Socket Layer 安全套接层)是基于HTTPS下的一个协议加密层,保障数据私密性。TLS(Transport Layer Security)则是升级版的SSL
2.https在http基础加了一层安全认证及加密层TLS或者SSL,它首先会通过安全层进行ca证书认证,正确获取服务端的公钥
3.接着客户端会通过公钥和服务端确认一种加密算法,后面的数据则可以使用该加密算法对数据进行加密

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值