HTTP -- HTTP概述

HTTP概述

HTTP使用的是可靠的数据传输协议。
web内容都是存储在web服务器上的,web服务器所使用的是http协议,故被称为http服务器。
web服务器是web资源的宿主,web资源是web内容的源头。
因特网上有数以千种的数据类型,http仔细的给每种要通过web传输的对象搭上了mime类型的数据格式标签。
web服务器会为所有的http对象附加一个mime类型,当web浏览器从服务器张去回忆额对象的时候,回去查看相关的mime类型,大多数浏览器都可以处理对象类型。
在这里插入图片描述

MIME类型

MIME类型是一种文本标记,表示一种主要的对象类型和一个特定的子类型,中间使用一条斜线来表示。
HTML: text/html
ASCII: text/plain
JPEG: image/jpeg
GIF: image/gif

URI

统一资源标识符:URI

URL

统一资源定位符: URL
URL描述了一台特定的服务器上某资源的特定位置,可以明确说明如何从一个精确,固定的位置获取资源。
在这里插入图片描述

URN

统一资源名URN。作为特定内容的唯一名称使用的,与目前的资源所在地无关,使用这些位置无关的URN,就可以将资源四出搬运,通过URN,还可以使用一个名字通过多种网络访问协议来访问资源。

事务

一个http事务由一条从客户端发往服务器的请求命令和一个从服务器发回客户端的响应结果组成,这种通信是通过http报文的格式化数据块进行的
在这里插入图片描述

状态码

每条http都会携带一个状态码,状态码是一个三位数字的代码,告知客户端请求是否成功,或者需要采用其他的动作。

web页面中可以包含多个对象

应用程序完成一项任务的时候会发布多个http事务。
在这里插入图片描述

报文

http报文是由一行一行的简单字符串构成的。http报文是纯文本,不是二进制代码。
在这里插入图片描述

HTTP报文包括起始行,首部字段,主体。
在这里插入图片描述

连接

TCP/IP

http是应用层协议,http无需操行网络通信的具体细节,联网的细节交给了tcp/ip协议
TCP提供了

  1. 无差错的数据传输
  2. 按序传输(数据总是会按照发送的顺序到达)
  3. 为分段的数据流(可以在任意时刻内以任何尺寸将数据发送出去)
    只要建立了tcp连接,客户端和服务器之间的报文交换就不会丢失,不会被破坏,也不会在接收的时候出现错序

连接,ip地址和端口号

在http客户端向服务器发送报文之前,需要使用ip地址和端口号在客户端和服务器中建立一条tcpip连接

协议版本

HTTP/0.9仅仅支持GET方法。
HTTP/1.0添加了版本号,各种HTTP的首部,以及对多媒体对象的处理。
HTTP/1.0+持久的Keep-alive连接,虚拟主机连接,代理连接支持都被加到http中。
HTTP/1.1
HTTP-NG(HTTP/2.0)

web的结构组件

代理: 位于客户端和服务器之间的HTTP中间实体
缓存: HTTP的仓库,使用页面的副本可以保存在离客户端最近的地方
网关: 连接其他引用程序的特殊web服务器
隧道: 对HTTP同行报文转发的特殊代理
Agent代理: 发起自动的HTTP请求的半智能体Web客户端

代理

首先来看http代理服务器,这是web安全,应用继承以及性能优化的重要组成模块。代理位于客户端和服务器之间,接受所有的客户端的HTTP请求,并将这些请求转发给服务器(可能对请求进行修改之后转发),对于用户来说,这些应用程序就是一个代理,代表用户访问服务器。
在这里插入图片描述

出于安全考虑,通常会将代理作为转发所有web流量的可信任中间节点使用,代理还可以作为请求和响应进行过滤。

缓存

web缓存或代理缓存是一种特殊的http代理服务器,可以经过代理传送的常用文档复制保存起来。下一个请求就可以享受缓存的私有副本提供的服务。
在这里插入图片描述

客户端从附近的缓存下载文档比从远程web服务器下载更快。

网关

网关是一种特殊的服务器,作为其他服务器的中间实体使用,通常用于将http流量转换为其他的协议,网关接受请求的时候就好像自己是资源的源服务器一样。
在这里插入图片描述

隧道

隧道是建立起来之后,就会在两条连接中间对原始数据进行盲转发的http应用程序,HTTP隧道通常用来在一条或者多条HTTP连接上转发非HTTP数据,转发的时候不会窥探数据。
http隧道的一种常见的用途是通过http连接承载加密的安全套接字层流量,这样ssl流量就可以穿过只允许web流量铜鼓殴打防火墙了
在这里插入图片描述

Agent代理

用户agent代理是代表用户发起http请求的客户端程序,所有发布web请求的应用程序都是HTTP Agent代理,HTTP Agent代理: Web 浏览器。但是用户代理还有很多其他的类型
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/650899.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

文心智能体之情感领航员:你的智能情感导师

文章目录 引言情感领航员的诞生与定位情感领航员的优势与特点专业性个性化便捷性隐私保护 如何创建自己的智能体创建方式智能体名称和设定基础配置角色与目标指导原则限制澄清个性化 高级配置保存 /发布流量数据分析智能体调优 总结 引言 在现代社会中,情感问题的普…

Docker拉取镜像报错:x509: certificate has expired or is not yet v..

太久没有使用docker进行镜像拉取,今天使用docker-compose拉取mongo发现报错(如下图): 报错信息翻译:证书已过期或尚未有效。 解决办法: 1.一般都是证书问题或者系统时间问题导致,可以先执行 da…

电子画册制作技巧,从零基础到专业人士

电子画册作为一种新兴的视觉传达形式,正越来越受到大众的喜爱。从设计新手到专业人士,如何快速掌握电子画册的制作技巧,提升自己的创作水平呢? 一、明确设计目的和定位 制作电子画册前,首先要明确其设计目的和定位。画…

腾盾科创无人机亮相第二十四届新疆农机博览会引发观展热潮

5月25日,第二十四届新疆农业机械博览会、2024“一带一路”智慧农业大会(以下简称新疆农机博览会)在新疆国际会展中心开幕。展会现场多种农牧业的新装备、新技术集中亮相,其中首次在新疆农机博览会上亮相的腾盾科创无人机产品引发观…

Linux - crond任务调度、at定时任务

1 crontab 进行-定时任务的设置 1)概述: 任务调度:是指系统在某个时间执行的特定的命令或程序。 任务调度分类: 系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等个别用户工作:个别用户可能希…

【机器学习300问】101、1x1卷积有什么作用?

卷积神经网络最重要的操作就是卷积层的卷积操作,之前文章中介绍过,卷积核filter往往都是3x3或者5x5什么的,但有一种非常特殊的卷积——1x1卷积。他在CNN中扮演着非常重要的角色。 一、通道维度的降维/升维 这是1x1卷积最显著的作用之一。通过…

GIS 交通线网可视化:优化城市交通管理与规划

图扑 GIS 交通线网可视化可帮助城市规划和交通管理部门做出更精准的决策,提升出行效率和城市整体交通秩序。

Pytorch深度学习实践笔记11(b站刘二大人)

🎬个人简介:一个全栈工程师的升级之路! 📋个人专栏:pytorch深度学习 🎀CSDN主页 发狂的小花 🌄人生秘诀:学习的本质就是极致重复! 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibi…

MySQL主从复制故障:“ Slave_SQL_Running:No“ 两种解决办法

问题 今天搭建MySQL的主从复制,查看从机状态时show slave status\G,发现这个参数为NO,导致主从复制失败。 Slave_SQL_Running: No 后面上网查阅了一下资料,大概就是因为在连接支持数据库后,也就是这个命令后&#xff…

解决git克隆项目出现fatal无法访问git clone https://github.com/lvgl/lvgl.git

Windows 11系统 报错 $ git clone https://github.com/lvgl/lvgl.git Cloning into lvgl... fatal: unable to access https://github.com/lvgl/lvgl.git/: Failed to connect to github.com port 443 after 21141 ms: Couldnt connect to server 解决方法 git运行这两段代码…

ssh远程连接的相关配置

连接同一个局域网下: 正好这里来理解一下计算机网络配置中的ip地址配置细节, inet 172.20.10.13: 这是主机的IP地址,用于在网络中唯一标识一台设备。在这个例子中,IP地址是172.20.10.13。 netmask 255.255.255.240: 这是子网掩码…

PG实践|PostgreSQL的安装和配置

📫 作者简介:「六月暴雪飞梨花」,专注于研究Java,就职于科技型公司后端工程师 🏆 近期荣誉:华为云云享专家、阿里云专家博主、腾讯云优秀创作者、ACDU成员 🔥 三连支持:欢迎 ❤️关注…

Unity UGUI实现无限滚动列表

Demo链接​​​https://download.csdn.net/download/qq_41973169/89364284http://Unity UGUI无限滚动列表 在游戏开发中,列表视图是一个常见的UI组件。实现一个高效的列表视图尤其重要,尤其是在需要展示大量数据时。本文将介绍如何在Unity中实现一个高效…

玄机-流量特征分析-蚁剑流量分析

题目简介: 1.木马的连接密码是多少 2.黑客执行的第一个命令是什么 3.黑客读取了哪个文件的内容,提交文件绝对路径 4.黑客上传了什么文件到服务器,提交文件名 5.黑客上传的文件内容是什么 6.黑客下载了哪个文件,提交文件绝对路径 一…

【UE Slate】 虚幻引擎Slate开发快速入门

目录 0 引言1 Slate框架1.0 控件布局1.1 SWidget1.1.1 SWidget的主要作用1.1.2 SWidget的关键方法1.1.3 使用SWidget创建自定义控件1.1.4 结论 1.2 SCompoundWidget1.2.1 SCompoundWidget的主要作用1.2.2 SCompoundWidget的使用示例1.2.3 SCompoundWidget的关系1.2.4 总结 1.3 …

NAT 网络转换

NAT(Network Address Translation) 网络地址转换 0x01 NAT 简介 为什么要使用 NAT IPv4 网络地址紧缺,从而出现了私有网段,来补充地址,但私有网段不课访问 internet 所以出现了 NAT 地址转换,将私有地址,转换为公网 I…

C数据结构:二叉树

目录 二叉树的数据结构 前序遍历 中序遍历 后序遍历 二叉树的创建 二叉树的销毁 二叉树的节点个数 二叉树叶子节点个数 二叉树第K层节点个数 二叉树的查找 层序遍历 判断二叉树是否为完全二叉树 完整代码 二叉树的数据结构 typedef char BTDataType; typedef str…

青蛙跳台阶问题

本期介绍🍖 主要介绍:青蛙跳台阶问题,青蛙跳台阶与斐波那契数列的关系👀。 文章目录 1. 题目2. 递归解题思路3. 迭代解题思路 1. 题目 从前有一只青蛙他想跳台阶,有n级台阶,青蛙一次可以跳1级台阶&#xff…

06_Tomcat

文章目录 Tomcat1.概念2.Tomcat安装3.Tomcat项目结构4.标准web项目结构5.Tomcat部署项目方式6.IDEA关联Tomcat6.1 构建tomcat和idea关联6.2 使用idea创建一个Javaweb工程6.3 使用idea将工程**构建**成一个app6.4 使用idea将构建好的app**部署**到tomcat中 Tomcat 1.概念 Tomc…

【MySQL事务(上)】

文章目录 前言一、什么是事务?1.关于事务的特性 二、为什么要有事务三、事务的提交方式测试事务准备工作事务的操作1.启动事务2.对事务进行回滚(只有在事务进行期间)3.提交事务(持久化)4.事务的异常情况结论 四、事务的…