http-长连接,短连接

这篇具有很好参考价值的文章主要介绍了http-长连接,短连接。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、常见的认证方式

常见认证方式

  • BASIC认证(基本认证)
  • DIGEST 认证(摘要认证)
  • SSL 客户端认证
  • FormBase 认证(基于表单认证)

BASIC(http 1. 0 现在基本不用)

http-长连接,短连接,前端http 相关,http,网络协议,网络

DIGEST (http 1. 0 现在基本不用)

http-长连接,短连接,前端http 相关,http,网络协议,网络

SSL 客户端认证

SSL 客户端认证是借由 HTTPS 的客户端证书完成认证的方式。 凭借客户端证书认证,服务器可确认访问是否来自已登录的客户端。

一般是银行等使用。
比如说大型金额往来的时候,在客户端操作,会给一个U 盾。 插上才能使用

FormBase 认证(基于表单认证)

写在代码里面的,用户提交信息,进行认证;通过Cookie 和session 的方式进行验证。

可查看http-简单的http 协议;

查看cookie 和session

二、连接

http 本来是在服务器 给四次握手断开后,就结束了。

http的长连接和短连接本质上是TCP 的长连接和短连接。
http-长连接,短连接,前端http 相关,http,网络协议,网络

短连接

HTTP/1.0 中,默认使用的就是短连接。浏览器和服务器在四次挥手后,就中断。
再次请求,就有一次开启。所以资源多的话,就会频繁的发起http请求。

http-长连接,短连接,前端http 相关,http,网络协议,网络

如何减少http 请求

长连接

HTTP/1.1 起,默认使用长连接。用来保持连接的正常。

Connection

Connection:keep-alive 当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接

Connection:close 代表-个Request完成后,客户端和服务器之间用于传输HTTP数据的TCP连接会关闭,当客户端再次发送Request,需要重新建立TCP连接

http-长连接,短连接,前端http 相关,http,网络协议,网络
使用长连接示意图
http-长连接,短连接,前端http 相关,http,网络协议,网络
长连接的优点:

  • 减少了TCP 连接的重复建立和断开所造成的额外开销,减轻了服务器端的负载。
  • 减少开销的那部分时间,使HTTP请求和响应能够更早的结束,这样web 页面的显示速度也就相应的提高了。
  • HTTP/1.1 所有的连接默认都是持久连接。

管线化

持久连接,让多数请求以管线化的方式发送成为可能。这样发送请求不再是等待上一个请求收到响应后,在发送下一个请求。管线化可以做到同时并行发送多个请求,而不需要串行的发送请求 了

http-长连接,短连接,前端http 相关,http,网络协议,网络
但是管线化,有个问题,就是开始以什么顺序发送的,那么接收的时候,就是什么顺序。所以,浏览器几乎不怎么使用管线化这个技术。

三、代理

web 代理

代理是一种有转发功能的应用程序,它扮演了位于服务器和客户端
“中间人”的角色,接收由客户端发送的请求并转发给服务器,同
时也接收服务器返回的响应并转发给客户端
http-长连接,短连接,前端http 相关,http,网络协议,网络
http-长连接,短连接,前端http 相关,http,网络协议,网络
代理,两端使用的协议一样
http-长连接,短连接,前端http 相关,http,网络协议,网络
在 HTTP 通信过程中,可级联多台代理服务器。请求和响应的转发
会经过数台类似锁链一样连接起来的代理服务器。转发时,需要附加
Via 首部字段以标记出经过的主机信息。

web 代理: charles; fiddler等等常用的抓包工具
代理的作用:

  1. 抓包
  2. FQ
  3. 匿名访问
  4. 过滤器

网关

网关是转发其他服务器通信数据的服务器,接收从客户端发送来的请求时,它就像自己拥有资源的源服务器一样对请求进行处理。有时客户端可能都不会察觉,自己的通信目标是一个网关。
http-长连接,短连接,前端http 相关,http,网络协议,网络

内容协商

内容协商,说白了就是做国际化。
在国外和国内都访问google的网址;一个出现英文,一个出现中文。

内容协商机制的定义:
内容协商机制是指客户端和服务器端就响应的资源内容进行交涉然后提供给客户端最为适合的资源。内容协商会以响应资源的语言、字符集、编码方式等作为判断的基准。

key 说明
Accept 告知服务器发送何种媒体类型
Accept-Language 告知服务器发送何种语言
Accept-Encoding 告知服务器采用何种编码
Accept-Charset 告知服务器发送何种字符集

http-长连接,短连接,前端http 相关,http,网络协议,网络

accecpt 常见的类型
text/html : HTML格式
text/plain :纯文本格式      
text/xml :  XML格式
text/css:  css格式
image/gif :gif图片格式    
image/jpeg :jpg图片格式 
image/png:png图片格式
video/mpeg:视频
vedio/quicktime:视频
application/xhtml+xml :XHTML格式
application/xml     : XML数据格式
application/atom+xml  :Atom XML聚合格式    
application/json    : JSON数据格式
application/pdf       :pdf格式  
application/msword  : Word文档格式
application/octet-stream : 二进制流数据(如常见的文件下载)
application/zip : (如常见的文件下载)
application/x-www-form-urlencoded : < form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)

更多常见的类型

.doc

application/msword

.dot

application/msword

.docx

application/vnd.openxmlformats-officedocument.wordprocessingml.document

.dotx

application/vnd.openxmlformats-officedocument.wordprocessingml.template

.docm

application/vnd.ms-word.document.macroEnabled.12

.dotm

application/vnd.ms-word.template.macroEnabled.12

.xls

application/vnd.ms-excel

.xlt

application/vnd.ms-excel

.xla

application/vnd.ms-excel

.xlsx

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

.xltx

application/vnd.openxmlformats-officedocument.spreadsheetml.template

.xlsm

application/vnd.ms-excel.sheet.macroEnabled.12

.xltm

application/vnd.ms-excel.template.macroEnabled.12

.xlam

application/vnd.ms-excel.addin.macroEnabled.12

.xlsb

application/vnd.ms-excel.sheet.binary.macroEnabled.12

.ppt

application/vnd.ms-powerpoint

.pot

application/vnd.ms-powerpoint

.pps

application/vnd.ms-powerpoint

.ppa

application/vnd.ms-powerpoint

.pptx

application/vnd.openxmlformats-officedocument.presentationml.presentation

.potx

application/vnd.openxmlformats-officedocument.presentationml.template

.ppsx

application/vnd.openxmlformats-officedocument.presentationml.slideshow

.ppam

application/vnd.ms-powerpoint.addin.macroEnabled.12

.pptm

application/vnd.ms-powerpoint.presentation.macroEnabled.12

.potm

application/vnd.ms-powerpoint.template.macroEnabled.12

.ppsm

application/vnd.ms-powerpoint.slideshow.macroEnabled.12

accept 和content-type 的区别

Http报头分为通用报头请求报头,响应报头和实体报头。

请求方的http报头结构:通用报头|请求报头|实体报头
响应方的http报头结构:通用报头|响应报头|实体报头

http-长连接,短连接,前端http 相关,http,网络协议,网络

http-长连接,短连接,前端http 相关,http,网络协议,网络
http-长连接,短连接,前端http 相关,http,网络协议,网络

Accept 在请求头里面,表示(发送端)客户端希望接收的数据类型为:

image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8

Content-Type 在实体报头里,表示 (发送端)客户端||服务端发送的数据类型是:

image/png

也就是说:
希望接收的类型是image/avif,image/webp,image/apng,image/svg+xml,image/,/*;q=0.8
本次接收到的数据类型是:
image/png
再举个例子:
http-长连接,短连接,前端http 相关,http,网络协议,网络
这个图表示:希望接收的是任意类型;
本次请求发送的数据的数据格式是:application/json

Accept-Language

首部字段 Accept-Language 用来告知服务器用户代理能够处理的自然语言集(指中文或英文等),以及自然语言集的相对优先级。可一次指定多种自然语言集

Accept-Language: zh-cn,zh;q=0.7,en-us,en;q=0.3
Accept-Encoding

Accept-Encoding 首部字段用来告知服务器用户代理支持的内容编码及内容编码的优先级顺序。可一次性指定多种内容编码。

key 说明
gzip 由文件压缩程序 gzip(GNU zip)生成的编码格式(RFC1952),采用 Lempel-Ziv 算法(LZ77)及 32 位循环冗余校验(Cyclic Redundancy Check,通称 CRC)
compress 由 UNIX 文件压缩程序 compress 生成的编码格式,采用 LempelZiv-Welch 算ZW)。
deflate 组合使用 zlib 格式(RFC1950)及由 deflate 压缩算法(RFC1951)生成的编码格式。
identity 不执行压缩或不会变化的默认编码格式
Accept-Charset

Accept-Charset 首部字段可用来通知服务器用户代理支持的字符集及字符集的相对优先顺序。另外,可一次性指定多种字符集。与首部字段 Accept 相同的是可用权重 q 值来表示相对优先级。

注意:q是权重系数,范围 0 =< q <= 1,q 值越大,请求越倾向于获得其“;”之前的类型表示的内容,若没有指定 q 值,则默认为1,若被赋值为0,则用于提醒服务器哪些是浏览器不接受的内容类型

内容协商技术有3种类型文章来源地址https://www.toymoban.com/news/detail-829806.html

  • 服务器驱动协商(用的最多)
  • 客户端驱动协商
  • 透明协商

到了这里,关于http-长连接,短连接的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端、HTTP协议(重点)

    前端是所有跟用户直接打交道的都可以称之为是前端 比如:PC页面、手机页面、平板页面、汽车显示屏、大屏幕展示出来的都是前端内容   能够用肉眼看到的都是前端 为什么要学前端 学了前端以后我们就可以做全栈工程师(会后端、会前端、会DB、会运维等) 咱们学前端不会

    2024年02月08日
    浏览(26)
  • 常见应用层协议端口号及简介【HTTP80、FTP20(数据连接)21(控制连接)、POP3 110、DNS 53、TFTP文件传输协议 69】、http无状态、http的压缩传输

    目录 一、常见应用层协议 我们先看一下其常用协议的端口号: HTTP(hypertext transfer protocol)超文本传输协议(80) HTTPS(secure hypertext transfer protocol)安全文本传输协议(443) FTP(file transfer protocol)文件传输协议(21) TELNET(terminal NETwork)远程登录(端口号23) SMTP简单邮件

    2023年04月08日
    浏览(49)
  • 网络协议 - HTTP 协议详解

    HTTP 协议详解,web开发必备。 URI 包含 URL 和 URN,目前 WEB 只有 URL 比较流行,所以见到的基本都是 URL。 URI(Uniform Resource Identifier,统一资源标识符) URL(Uniform Resource Locator,统一资源定位符) URN(Uniform Resource Name,统一资源名称) 1. 请求报文 2. 响应报文 客户端发送的 请求报文 第

    2024年02月04日
    浏览(53)
  • 【网络协议】聊聊http协议

    当我们输入www.baidu.com的时候,其实是先将baidu.com的域名进行DNS解析,转换成对应的ip地址,然后开始进行基于TCP构建三次握手的连接,目前使用的是1.1 默认是开启了keep-Alive。可以在多次请求中进行连接复用。 连接建立之后,就要发送HTTP的请求了, 整体其实就是三部分,请

    2024年02月06日
    浏览(58)
  • android studio 使用MQTT协议连接onenet 注意事项和相关函数

    一、注意事项: 1.添加依赖: 2.在注册表允许打开网络 3.在application     /application之间添加用于支持 MQTT(Message Queuing Telemetry Transport)通信协议的 Eclipse Paho Android 服务。 4.打开项目中的 gradle.properties 文件,并确保以下属性设置为true------更新所有的支持库到AndroidX中。 二、

    2024年04月26日
    浏览(46)
  • 网络编程 http 相关基础概念

    HTTP表单是一种用于在Web应用程序中收集用户输入数据的机制。它由HTML表单元素和HTTP请求组成。 HTML表单元素(如、、等)用于创建用户界面,让用户输入数据。用户可以在表单中填写文本、选择选项、上传文件等。 当用户提交表单时,浏览器会将表单数据封装在HTTP请求中,

    2024年02月11日
    浏览(40)
  • 网络协议与攻击模拟-21-HTTP协议

    1、 HTTP 协议结构 2、在 Windows server 去搭建 web 服务器 3、分析 HTTP 协议流量 1、概念 HTTP (超文本传输协议)是用于在万维网服务器上传输超文本( HTML )到本地浏览器的传输协议 属于 TCP / IP 协议簇的一员( HTML 文件、图片、查询结构等) 基于传输层 TCP 的80端口 2、万维网服

    2024年02月16日
    浏览(41)
  • SIM800C连接OneNet平台HTTP协议上传GPS数据

    科技进步不断推动新产品的出现,越来越多的电子产品开始着力解决社会焦点问题,随着城市发展以及人口流动性的增加,儿童户外被拐,老人外出走丢,交通工具被盗和大型物件丢失等问题变样严重起来,因此,为了更好地利用现代科学技术解决社会关注的问题。本文就设计出一款基

    2024年02月02日
    浏览(47)
  • 网络协议HTTP/1、HTTP/2 及 HTTP/3详解

    目录 概述  一、发展史 HTTP/1.1  Keep-alive  动静分离  HTTP/2 二进制传输   多路复用 Header 压缩 服务端 Push  HTTP/3 QUIC  多路复用 0-RTT 纠错机制 三、小结 HTTP(Hyper Text Transformer Protocol,超文本传输协议)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到

    2024年02月02日
    浏览(56)
  • [网络原理] HTTP协议

    要珍惜时间呀 HTTP协议是应用层协议,TCP/IP协议为传输层协议,负责传输数据.而HTTP协议相当于对传输的数据据怎样处理和使用进行说明. 每次,我们访问网站的时候,都会给网站的服务器发送一个HTTP请求,服务器收到请求后,会返回一个HTTP响应.如下图所示. 下图,为一个HTTP请求的格式

    2024年02月03日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包