学习
实践
活动
工具
TVP
写文章

HTTP 0.9 HTTP 1.0 HTTP 1.1 HTTP 2.0区别

HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。 HTTP/0.9 HTTP/0.9是第一个版本的HTTP协议,已过时。 HTTP/1.0 HTTP协议的第二个版本,第一个在通讯中指定版本号的HTTP协议版本,至今仍被广泛采用。 方法 支持长连接(但默认还是使用短连接),缓存机制,以及身份认证 HTTP/1.1 HTTP协议的第三个版本是HTTP/1.1,是目前使用最广泛的协议版本。 HTTP/1.1是目前主流的HTTP协议版本,相对于HTTP/1.0新增了以下内容: 默认为长连接 HTTP 1.1支持长连接(PersistentConnection)和请求的流水线(Pipelining HTTP/2.0 HTTP协议的第四个版本是HTTP/2.0,相对于HTTP/1.1新增了以下内容: 二进制分帧 HTTP 2.0 的所有帧都采用二进制编码 帧:客户端与服务器通过交换帧来通信,帧是基于这个新协议通信的最小单位

89250

HTTP HTTPS HTTP1.1 HTTP2 HTTP3

这种直白的问题,回答的并不流畅,结合最近我在写gRPC, 索性梳理一下 HTTP HTTPS HTTP1.1 HTTP2 HTTP3 HTTP 客户端(如Web浏览器)从服务器(如Web服务器)请求资源时用到的协议 HTTPS 一种加密HTTP的方式。一般使用SSL/TLS将HTTP消息包装为加密格式。 HTTP/1.1 这是HTTP协议目前的流行格式。它是基于文本的协议, HTTP/1.1消息可以是未加密的(网站地址以http://开头),也可以使用HTTPS加密(网站地址以https://开头)。 gRpc是谷歌开源的远程过程调用框架,基于HTTP2 协议研发。 HTTP3 HTTP的下一个版本,目前正在开发中。 HTTP/2采用二进制格式传输数据,而非HTTP1.x的文本格式,二进制协议解析起来更高效。

1.2K11
  • 广告
    关闭

    热门业务场景教学

    个人网站、项目部署、开发环境、游戏服务器、图床、渲染训练等免费搭建教程,多款云服务器20元起。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    HTTP探索之路 - HTTP 1 HTTP 2 QUIC

    1991年HTTP/0.9被发明;1996年出现了HTTP/1.0;2015年HTTP/2正式发布;2020年HTTP/3或能正式使用。以下将会简单介绍。 一、HTTP 1.1 与 HTTP 2 1.1 HTTP 1.1 的缺陷 高延迟 — 队头阻塞(Head-Of-Line Blocking) 无状态特性 — 阻碍交互 明文传输 — 不安全性 1.3 HTTP2 HTTP/2 基于 SPDY,专注于性能,最大的一个目标是在用户和网站间只用一个连接。 新增特性: 二进制分帧 - HTTP2 性能增强的核心 多路复用 - 解决串行的文件传输和连接数过多 二进制分帧 首先,HTTP2 没有改变 HTTP1 的语义,只是在应用层使用二进制分帧方式传输 参考资料 1. http2.0原理详细分析 https://www.huaijiujia.com/2018/06/30/http协议-http2-0原理详细分析/ 2.

    10510

    网络基础 HTTP协议之HTTP消息(HTTP Message)

    消息类型(Message Type) HTTP messages包含从客户端到服务器的请求和服务器到客户端的响应 HTTP-message = Request | Response; Request和 [ message-body ] 1)起始行(start-line) start-line= Request-Line | Status-Line 2)消息头(Message Headers) HTTP 头(HTTP header), 包含通用头(general-header),请求头(request-header), 响应头(response-header)和实体头(entity-header) Request = Request-Line general-header | request-header | entity-header 空行 [ message-body ] 如图,访问http 2)请求行(Request-Line) Request-Line = Method Request-URI HTTP-Version 说明: 1) Method Method = OPTION

    69340

    HTTP系列之:HTTP缓存

    对于HTTP协议来说,本身就自带有HTTP缓存。 今天我们就深入探讨一下HTTP中的缓存机制和使用。 HTTP中缓存响应的状态 对于HTTP缓存来说,一般缓存的是GET请求,因为GET请求除了URI之外,并没有其他多余的参数,并且其表示的意义是从服务器获取资源。 HTTP中的缓存控制 HTTP中的缓存控制是通过HTTP头来表示的。在HTTP1.1中加入了Cache-Control,我们可以通过Cache-Control来控制请求和响应的缓存情况。 Cache-Control是HTTP1.1中定义的header字段,在HTTP1.0中也有一个类似的字段叫做Pragma。 总结 到此,HTTP缓存就介绍完毕了,大家可以在实际的应用中对HTTP缓存加深理解。

    14100

    HTTPHTTP基本知识

    ​写在前面的话,这篇文章是作者参考网上的帖子的一个整理,参考资料较多,作为Http的入门文章,以供学习使用~ 一、Http是什么? HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。 由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 2、灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 请求方法: 根据HTTP标准,HTTP请求可以使用多种请求方法。 六、HTTP工作原理 HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。

    24320

    HTTP协议之:HTTP1.1和HTTP2

    HTTP/1.1是1997年在原始的HTTP协议基础上进行的补充和优化。 基本上所有的现代浏览器都支持HTTP/2协议了,但是还有很多应用程序使用的是老的HTTP/1.1协议,本文将会介绍HTTP/1.1和HTTP/2的不同之处。 之前我们讲到HTTP/1.1是以文本的形式进行传输的,这样的缺点就是数据占用的空间比较大,相较于HTTP/1.1来说HTTP/2使用的是二进制进行传输的,使用二进制对消息进行封装,同时保留了HTTP的语义 我们看下HTTP1.1和HTTP2是怎么做的。 在HTTP1.1中,通常使用gzip对HTTP中的消息进行压缩,主要是针对CSS文件和javascript文件,但是HTTP的消息头还是由纯文本来发送的,另外由于cookie的使用,导致HTTP消息头的大小会越来越大

    49330

    go http http.Handle 和 http.HandleFunc 区别

    使用net/http包的时候这个区别有点糊涂,所以查了一下 做一下总结 区别 http.Handle func Handle(pattern string, handler Handler) { DefaultServeMux.Handle (w http.ResponseWriter, r *http.Request) { w.Write([]byte(r.URL.Path)) } func main() { var server httpServer http.Handle("/", server) log.Fatal(http.ListenAndServe("localhost:9000", nil)) } http.HandleFunc package main import ( "net/http" "log" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter 参考 Go语言的“http.Handle”和“http.HandleFunc”

    4.7K40

    HTTP系列之:HTTP缓存

    对于HTTP协议来说,本身就自带有HTTP缓存。 今天我们就深入探讨一下HTTP中的缓存机制和使用。 HTTP中缓存响应的状态 对于HTTP缓存来说,一般缓存的是GET请求,因为GET请求除了URI之外,并没有其他多余的参数,并且其表示的意义是从服务器获取资源。 HTTP中的缓存控制 HTTP中的缓存控制是通过HTTP头来表示的。在HTTP1.1中加入了Cache-Control,我们可以通过Cache-Control来控制请求和响应的缓存情况。 Cache-Control是HTTP1.1中定义的header字段,在HTTP1.0中也有一个类似的字段叫做Pragma。 总结 到此,HTTP缓存就介绍完毕了,大家可以在实际的应用中对HTTP缓存加深理解。 本文已收录于 http://www.flydean.com/04-http-cache/

    14610

    HTTPHTTP基本知识

    写在前面的话,这篇文章是作者参考网上的帖子的一个整理,参考资料较多,作为Http的入门文章,以供学习使用~ 一、Http是什么? HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。 由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 2、灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 Http的这种无状态可以通过cookie缓存等方式来解决。 Http内容: ? 请求方法: 根据HTTP标准,HTTP请求可以使用多种请求方法。

    33720

    HTTP

    版本 HTTP/0.9 HTTP协议的最初版本,功能简陋,仅支持请求方式GET,并且仅能请求访问HTML格式的资源 HTTP/1.0 发送请求,创建一次连接,获得一个web资源,连接断开 HTTP/ ,做到同一个连接并发处理多个请求,而且并发请求的数量比HTTP1.1大了好几个数量级) 作用 HTTP是一个客户端和服务器端请求和应答的标准(TCP)。 由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 组成 Http协议由Http请求和Http响应组成,当在浏览器中输入网址访问某个网站时, 你的浏览器会将你的请求封装成一个Http请求发送给服务器站点,服务器接收到请 求后会组织响应数据封装成一个Http http请求包括:请求行、请求头、请求体 http响应包括:响应行、响应头、响应体 HTTP请求格式(请求协议) ? ?

    25010

    HTTP 报文内的 HTTP信息

    HTTP 报文内的 HTTP信息.png HTTP 报文内的 HTTP信息 HTTP 报文 用于 HTTP 协议交互的信息被称为 HTTP 报文 HTTP 报文大致可分为报文首部和报文主体两块 报文结构 但是,编码的操作需要计算机来完成,因此会消耗更多的 CPU 等 资源 报文 是 HTTP 通信中的基本单位,由 8 位组字节流(octet sequence,其中 octet 为 8 个比特)组成,通过 HTTP 通信传输 实体 作为请求或响应的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成 向待发送邮件内增加附件时,为了使邮件容量变小,我们会先用 ZIP 压缩文件之后再添加附件发送 常用的内容编码有以下几种 gzip( GNU zip) compress( UNIX 系统的标准压缩) deflate ( zlib) identity(不进行编码) 在 HTTP 通信过程中,请求的编码实体资源尚未全部传输完成之前 来容纳多份不同类型的数据 多部分对象集合包含的对象 multipart/form-data multipart/byteranges multipart/form-data multipart/byteranges 在 HTTP

    21300

    HTTP状态码->HTTP Status Code

    HTTP Status 2xx  (成功) 说明: HTTP Status 2xx  (成功) ->表示成功处理了请求的状态代码; 详细代码及说明: HTTP Status 200 (成功) ->  HTTP Status 201 (已创建) -> 请求成功并且服务器创建了新的资源。 HTTP Status 202 (已接受) -> 服务器已接受请求,但尚未处理。 HTTP Status 4xx (请求错误) 说明: HTTP Status 4xx (请求错误) ->这些状态代码表示请求可能出错,妨碍了服务器的处理。 HTTP Status 403 (禁止) -> 服务器拒绝请求。 HTTP Status 404 (未找到)  ->服务器找不到请求的网页。 HTTP Status 505 (HTTP 版本不受支持) -> 服务器不支持请求中所用的 HTTP 协议版本。

    55830

    HTTP

    什么是http协议http是一个计算机世界里专门在两点之前传输文字、图片、音频、视频等超文本数据的约定和规范。 .客户端收到后,发送ACK的ACK给服务端,服务端关闭,客户端等待2MSL后关闭Client -> ACK -> Server -> CLOSEDClient -> 2MSL时间 -> CLOSED HTTP 然后通过HTTP缓存代理技术进行缓存,缓存命中就返回给用户,否则回源站去取。CDN擅长缓存静态资源(图片、音频等),当然也支持动态内容缓存。 “请求-应答”是半双工的通信模式,不具备服务器推送能力,限制了HTTP在实时通信领域的发展。虽然可以用轮询来不停的向服务器发送HTTP请求,但是,反复的无效请求占用了大量的带宽和CPU资源。 HTTP缓存策略强缓存协商缓存expires(过期时间)max-age(缓存时间)last-modified(上次更改时间)Etag(标识,需要预先在服务端的响应报文设置) HTTP状态码1XX 请求已经接收到

    21210

    HTTP初始(二)——HTTP家族(HTTPS)

    /0.9 1991年发布的HTTP/0.9是第一个HTTP版本,同时也是最简单的HTTPHTTP请求中不包括HTTP的版本号和头部信息,仅有一个GET方法,HTTP响应结果也只包含HTTP文档。该版本已过时。 所以,HTTP1.0的队列阻塞发生在客户端。 HTTP/1.1 看名字就可以知道,HTTP1.1是为了克服HTTP1.0的缺点出现的升级版。 它不仅继承了HTTP1.0简单的特点,还克服了诸多HTTP1.0性能上的问题。 HTTP/2.0 HTTP/2.0的显著特点是低延时传输。

    11630

    一文读懂 HTTP1HTTP2HTTP3

    1991 年 HTTP0.9 被发明。1996 年出现了 HTTP1.0。2015 年 HTTP2 正式发布。2020 年 HTTP3 或能正式使用。以下将会简单介绍。 HTTP1.1 与 HTTP2 HTTP1.1 的缺陷 高延迟 — 队头阻塞(Head-Of-Line Blocking) 无状态特性 — 阻碍交互 明文传输 — 不安全性 不支持服务端推送 队头阻塞 SPDY 协议 SPDY 是由 google 推行的改进版本的 HTTP1.1 (那时候还没有 HTTP2)。 ? HTTP2 HTTP2 基于 SPDY,专注于性能,最大的一个目标是在用户和网站间只用一个连接。 新增特性: 二进制分帧 - HTTP2 性能增强的核心 多路复用 - 解决串行的文件传输和连接数过多 二进制分帧 首先,HTTP2 没有改变 HTTP1 的语义,只是在应用层使用二进制分帧方式传输。

    60410

    HTTP详解(3)-http1.0 和http1.1 区别

    翻了下HTTP1.1的协议标准RFC2616,下面是看到的一些它跟HTTP1.0的差别。 1. HTTP1.0则没有。 为了克服HTTP 1.0的这个缺陷,HTTP1.1支持持久连接,在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。 基于HTTP 1.1协议的客户机与服务器的信息交换过程,如图3.4所示。 图3.4 可见,HTTP 1.1在继承了HTTP 1.0优点的基础上,也克服了HTTP 1.0的性能问题。 不仅如此,HTTP 1.1还通过增加更多的请求头和响应头来改进和扩充HTTP1.0的功能。

    15110

    HTTP1.0、HTTP2.0、HTTP 3.0区别

    HTTP 0.9 http0.9只是一个简单的协议,只有一个GET方法,没有首部,目标用来获取HTML。 HTTP 1.0 在 HTTP/1.0 中,HTTP 1.0规定浏览器与服务器只保持短暂的连接,一个服务器在发送完一个 HTTP 响应后,会断开 TCP 链接。 HTTP 1.1 HTTP 1.1支持持久连接(HTTP/1.1的默认模式使用带流水线的持久连接),在一个TCP连接上可以传送多个HTTP请求和响应。 HTTP 1.1引入cookie以及安全机制 HTTP 2.0 HTTP2.0中所有加强性能的核心是二进制传输,在HTTP1.x中,我们是通过文本的方式传输数据。 HTTP2.0 使用了HPACK(HTTP2头部压缩算法)压缩格式对传输的header进行编码,减少了header的大小。

    35621

    七、《图解HTTP》- HTTP首部和HTTP协作服务器

    #tjhttp 七、《图解HTTP》- HTTP首部和HTTP协作服务器#知识点请求头部字段分类比较多,本章介绍了下面的首部,内容非常多,熟悉常见的请求首部即可。 图片HTTP 报文由方法、URI、HTTP 版本、HTTP 首部字段等部分构成。 HTTP/1.1 首部字段下面是几张关于首部字段的表,包首部字段分类对应的四个分类:通用首部字段图片请求首部字段图片响应首部字段图片负载首部字段图片7.1 非 HTTP/1.1 首部字段在HTTP协议通信中使用的首部字段除了上面定义的之外 417 表示期望失败HTTP/1.1 协议里设计 100 (Continue) HTTP 状态码的的目的是,在客户端发送 Request Message 之前,HTTP/1.1 协议允许客户端先判定服务器是否愿意接受客户端发来的消息主体 HTTP 之前出现的协议FTP:比 TCP/IP 协议族的出现还要早,虽然被HTTP超越,但是目前还是还是广泛用于文件上传。

    9610

    详解HTTP1.0、HTTP1.1、HTTP2、HTTPS

    HTTP发展史(包括版本) HTTP/0.9:1991年发布,极其简单,只有一个get命令 HTTP/1.0:1996年5月发布,增加了大量内容 HTTP/1.1:1997年1月发布,进一步完善HTTP 协议,是目前最流行的版本 SPDY :2009年谷歌发布SPDY协议,主要解决HTTP/1.1效率不高的问题 HTTP/2 :2015年借鉴SPDY的HTTP/2发布 五. HTTP/2 HTTP/2以Google发布的SPDY协议为基础,于2015年发布。它不叫HTTP/2.0,因为标准委员会不打算再发布子版本了,下一个新版本将是HTTP/3。 HTTP/2协议只在HTTPS环境下才有效,升级到HTTP/2,必须先启用HTTPS。 HTTP/2解决了HTTP/1.1的性能问题,主要特点如下: 二进制分帧:HTTP/1.1的头信息是文本(ASCII编码),数据体可以是文本,也可以是二进制;HTTP/2 头信息和数据体都是二进制,统称为

    7.2K30

    相关产品

    • Serverless HTTP 服务

      Serverless HTTP 服务

      Serverless HTTP 基于腾讯云 API 网关平台,为互联网业务提供 0 配置、高可用、弹性扩展的对外 RESTful API 能力,支持 swagger/ openAPI 等协议。便于客户快速上线业务逻辑,通过规范的 API 支持内外系统的集成和连接。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券