http各个版本的区别

http进化史

http0.9:
只有GET请求,也不支持请求头信息
请求信息只有下面一行
GET www.baidu.com

http1.0:
在请求中指定版本号,支持GET、POST、HEAD

http1.1:
http1.1新增了:OPTIONS、PUT、DELETE、TRACE、CONNECT五种HTTP请求方法。
需要指定host头:
长连接:
缓存策略不同:
新增了24个错误状态码:

http2:
二进制传输:http1.x的解析是基于文本,http2的解析是基于二进制;
多路复用:
header压缩:
服务端推送:
参考文章 https://www.cnblogs.com/qcloud1001/p/9370493.html

https:
http是一种超文本传输协议,默认端口是80,进行明文传输并且是无状态的,存在安全问题
https是一种安全超文本传输协议,默认端口是443,https是基于ssl和http构建的能够进行加密传输和身份认证的网络传输协议,需要购买ca证书以进行身份验证,同时证书认证过程是基于非对称加密,内容传输过程是基于对称加密的过程;
https介绍参考这篇文章https://www.cnblogs.com/imstudy/p/12015889.html

http 8种请求方式的区别

get:从服务器请求指定资源,不会产生非幂等的副作用;
head: 和get请求一样从服务器获取资源,但是不返回资源的内容部分,只返回服务的响应头;

post:用于向服务器提交提交数据,更新资源,会产生非幂等的副作用;
put:上传完整的资源到服务进行整体更新;

delete:删除指定资源;

trace:测试或诊断服务收到的请求信息,所以会返回你发送的请求内容;

options:测试服务支持所有请求的方法,返回响应的内容为:
Allow: HEAD,GET,PUT,DELETE,OPTIONS
通过cors进行跨域时,会使用options发送嗅探请求,以确认是否有对该资源的访问权限;

connect:http1.1预留给能够将请求改为管道方式的代理服务器;

patch:和put一样用于对资源的更新,区别如下:
put是对资源的整体更新,patch是部分更新;
put只会对已存在的资源进行更新,patch在资源不存在时会创建新的资源;

http1.1的长连接和http2.0的多路复用的区别?

http1.1之前一次请求就会建立一次连接,http1.1通过管道化方式实现多个请求串行化共享同一个连接,但是一旦某个请求耗时严重,就导致后面的请求被阻塞,俗称线头阻塞;

http2.0多个请求共享同一个连接,并且是并行的,所有请求不会影响其他请求;

http content-type值的常见类型有哪些?

请求头中的content-type表示客户端发送的数据格式以及编码类型,告诉服务以什么样的格式解析;
响应头中的content-type表示服务端实际返回的数据格式及编码类型;

Content-Type: text/plain;charset=UTF-8
content-type: text/html; charset=UTF-8
Content-Type: text/xml;charset=UTF-8
content-type: image/jpeg; charset=UTF-8
content-type: image/png; charset=UTF-8
content-type: image/gif; charset=UTF-8

下面这两种是提交表单数据时通过表单的enctype属性指定

<form action="url" enctype="multipart/form-data" method="post"></form>
//form表单中有文件上传控件时
content-type: multipart/form-data; charset=UTF-8
//form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)
content-type: application/x-www-form-urlencoded; charset=UTF-8

content-type: application/json; charset=UTF-8

cookie和sesssion的区别?

http是无状态的,但是有的时候服务需要识别客户端的身份,这个时候cookie出现了;浏览器在访问服务后,服务器会生成cookie或者session,浏览器均以cookie的形式存储下来(session一般是把sessionId当成cookie存在cookie中,具体的数据是保存在服务器端的,浏览器请求时会带上sessionId,服务器通过sessionId查询数据),session的默认有效期是浏览器的会话期以及服务设置的session有效期的最短时间;大部分session保存在内存中,cookie保存在用户本地电脑中;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值