美文网首页
(2)http基本知识&特性

(2)http基本知识&特性

作者: hedgehog1112 | 来源:发表于2020-12-15 22:58 被阅读0次
本文只包含一

二、概要:http优点:简单、灵活和易于扩展、应用广泛和跨平台

                  http缺点:「无状态、明文传输」「不安全」

                  http性能:长连接、管道网络传输、队头阻塞

一、HTTP 基本概念

HTTP 是超文本传输协议,HyperText Transfer Protocol。拆成三个部分:超文本、传输、协议

1. 「协议」

」:两个以上的参与者,你和房东。如:「三方协议」「租房协议」

」:参与者行为约定和规范。违约如何处理等。

2. 「传输」

包含两项重要的信息:HTTP协议是一个双向协议,两点间传输数据的约定和规范

请求 - 应答:数据在 A 和 B 间传输,允许中间有中转或接力

中间人遵从 HTTP 协议,只要不打扰基本数据传输,就可添加任意额外东西

3. 「超文本」

HTTP 传输内容,图片、视频、压缩包等,都算做「文本」。「超文本」,能从一个超文本跳转到另外一个超文本。

如HTML ,本身纯文字,标签定义图片、视频链接,经浏览器解释,呈现有文字、画面网页

总结:经过三个名词解释「超文本传输协议」「服务器< -- >服务器/本地浏览器」或者其他点两点之间

2、HTTP 常见的状态码

https://www.jianshu.com/p/49fe01c6bc43

3、http 常见字段有哪些?

1)Host:客户端发请求时,指定服务器域名,可将请求发往「同一台」服务器上的不同网站。Host:www.A.com

2)Content-Length :本次回应数据长度。如1000

3)Connection 字段:客户端要求服务器使用 TCP 持久连接,以便其他请求复用

    HTTP/1.1 默认持久连接,为兼容老版本HTTP,要指定 Connection 首部字段值为 Keep-Alive。

   建立可复用的 TCP 连接,直到客户端或服务器主动关闭连接

4)Content-Type:回应时,告诉客户端,本次数据格式

5)Content-Type: text/html; charset=utf-8    发送的是网页,编码UTF-8

    Accept: */*    客户端声明自己可以接受任何格式的数据

6)Content-Encoding 字段:说明数据压缩方法

7)Content-Encoding: gzip    告知客户端用gzip 方式压缩

    Accept-Encoding: gzip, deflate  说明自己可以接受哪些压缩方法

三、http特性

1、HTTP(1.1)优点

「简单、灵活和易于扩展、应用广泛和跨平台」

1.简单:报文格式header + body,头部key-value

2. 灵活和易于扩展:

    各类请求方法、URI/URL、状态码、头字段等每个组成都可自定义和扩充

    HTTP 工作在应用层( OSI 第七层),下层可以随意变化

    HTTPS 在 HTTP 与 TCP 间增加SSL/TLS 安全传输层,HTTP/3把TCPP层换成基于 UDP 的 QUIC

3. 应用广泛和跨平台

2、缺点

协议优缺点一体双刃剑,「无状态、明文传输」「不安全」

1. 无状态双刃剑

    好处不需额外资源记HTTP 状态,减轻服务器负担,把更多CPU 和内存外提供服务

    坏处,关联性操作时麻烦,如登录->添加购物车->下单->结算->支付,都要知道用户身份,每次都要问一遍身份信息。

    Cookie解决:在请求和响应报文中写入, Cookie 信息来控制客户端状态

相当于:客户端第一次请求后,服务器会下发一个装有客户信息的「小贴纸」,后续客户端请求服务器的时候,带上「小贴纸」,服务器就能认得了了,

2. 明文传输双刃剑

传输过程信息,方便阅读的,F12 控制台或 Wireshark 抓包都可看

HTTP 所有信息都暴露,容易窃取

3. 不安全:HTTPS 方式解决,引入 SSL/TLS 层

3、HTTP/1.1 性能

基于 TCP/IP,用「请求 - 应答」通信模式    

1. 长连接

任意一端没明确提出断开连接,保持连接状态

HTTP/1.1 提出长连接,减少重复建立和断开所造成额外开销,减轻服务器负载

早期HTTP/1.0 性能问题,发起请求,要新建一次 TCP 连接(三次握手),串行请求做无畏TCP 连接建立和断开,增加通信开销

2. 管道网络传输

同一TCP 连接里,客户端可发起多个请求,不必发出回来,就继续发,减少响应时间

3. 队头阻塞

「请求 - 应答」模式加剧HTTP 性能问题。

顺序发送阻塞时,后面排队也阻塞。HTTP/1.1 性能一般般,后续HTTP/2 和 HTTP/3 就是优化 HTTP 性能

https://mp.weixin.qq.com/s/bUy220-ect00N4gnO0697A

相关文章

  • (2)http基本知识&特性

    二、概要:http优点:简单、灵活和易于扩展、应用广泛和跨平台 http缺点:「无状态、明文传输」「不安全」 ...

  • OkHttp的使用

    1.Http网络请求基本知识2.OkHttp的基本使用3.Call模型 一.Http网络请求响应基本知识 简介 从...

  • 找工作(目录)

    知识点 JAVA基本知识 Java基本知识点总结:http://www.jianshu.com/p/6146a2d...

  • 15,http2随便谈谈

    http2相对于http有如下特性:

  • 一文读懂HTTP/2及HTTP/3特性

    摘要: 学习 HTTP/2 与 HTTP/3。 原文:一文读懂HTTP/2 及 HTTP/3特性 作者:浪里行舟 ...

  • 【HTTP】HTTP基本知识

    写在前面的话,这篇文章是作者参考网上的帖子的一个整理,参考资料较多,作为Http的入门文章,以供学习使用~ 原文链...

  • HTTP历史与HTTP/2新特性

    HTTP/2协议 Http是超文本传输协议(Hypertext Transfer Protocol Bis)的下一...

  • HTTP/2 新特性总结

    我在想了解HTTP/2的时候,查阅了很多资料,发现这篇很好,是外国的文章.我翻译过来,加入自己的一点理解. HTT...

  • HTTP/2 新特性浅析

    HTTP发展简史 HTTP/0.9 1991年发布 只支持GET命令 请求及返回值都是ASCII码 请求以换行符(...

  • http2.x 特性

    http2.x新特性 HTTP/2的主要设计思想,源自于Google的SPDY协议。是互联网工程任务组(IETF)...

网友评论

      本文标题:(2)http基本知识&特性

      本文链接:https://www.haomeiwen.com/subject/xwfwgktx.html