01,http 协议

ops/2024/11/1 1:01:12/

1 ,http 协议 :介绍

1 ,http :是什么

Hyper Text Transfer Protocol :超文本传输协议

2 ,传输内容 :文本

1 ,内容 :
  
  纯文本
  
2 ,特殊 :
  
  这个文本,是有具体含义的

3 ,实现 :

1 ,HTTP1.0 :TCP
  
2 ,HTTP1.1 :TCP
  
3 ,HTTP2.0 :TCP

4 ,常用版本 :1 ,3

HTTP1.0
  
HTTP3.0

2 ,http :工作流程

1 ,架构图 :

2 ,特点 :一问一答

1 ,问 :
  
  客户端,给服务器发一个请求。
  
2 ,答 :
  
  服务器,收到请求后,经过逻辑处理,给客户端返回一个响应。

3 ,常用术语 :客户端,服务端,请求,响应

1 ,客户端:
  
  主动发起网络请求的一端
  
2 ,服务器:
  
  被动接收网络请求的一端
  
3 ,请求:
  
  客户端给服务器发送的数据
  
4 ,响应:
  
  服务器给客户端返回的数据

4 ,http :请求数据

5 ,http :响应数据

6 ,请求方式 :10 种

3 ,数据解析 :请求

1 ,http :请求数据

2 ,数据构成 :4 部分

1 ,首行:
  
  请求方式,url,版本号
  
2 ,协议头:
  
  1 ,数据格式 :k - v
  
  2 ,分隔符 :逗号 + 空格
  
  3 ,多少个 k-v :不确定
  
3 ,空行 :
  
  1 ,为什么存在空行 :
  
    因为 header 中有多少个 k-v 是不确定的,因此,用空行来分割 header - body
  
  2 ,作用 :
  
    header 与 body 的分隔符。
  
4 ,正文:
  
  1 ,是否可能为 :空
  
    可能
  
  2 ,如果不为空 :
  
    header 中的 content-length 标识正文的长度

4 ,请求 :header

1 ,Content-Length :

1 ,意义 :body 的数据长度
  
2 ,单位 :字节

2 ,Content-Type :body 的数据格式

1 ,application/x-www-form-urlencoded :form 表单,字符串
  
2 ,multipart/form-data :form 表单,图片,视频
  
3 ,application/json :body 数据为一个 json

3 ,User-Agent :浏览器,操作系统版本

浏览器,操作系统版本

4 ,Referer :来源

1 ,意义 :
  
  你是从哪个页面,跳转到这里的

5 ,cookie :小饼干

保存数据


http://www.ppmy.cn/ops/129986.html

相关文章

我要成为算法高手-滑动窗口篇

目录 滑动窗口算法题目1:长度最小的子数组题目2:无重复字符的最长子串题目3:最大连续1的个数题目4:将x减到0的最小操作数题目5:水果成篮题目6:找到字符串中所有的字母异位词题目7:串联所有单词的子串题目8:最小覆盖子串 滑动窗口算法 滑动窗口的本质还是双指针,只不…

基于Openwrt系统架构,实现应用与驱动的实例。

一、在openwrt系统架构,编写helloworld的应用程序。 第一步先创建目录,项目代码要放在 openwrt根目下的 package 目录中,这里源码写在了 hellworld 的 src 目录下,因为外层还有需要编写的文件。 mkdir -p ~/openwrt/package/hel…

人工智能技术:塑造未来生活与工作的变革力量

人工智能技术:塑造未来生活与工作的变革力量 一、引言 在当今科技飞速发展的时代,人工智能技术如同一颗璀璨的新星,在各个领域绽放出耀眼的光芒,引领着一场前所未有的变革。从医疗领域的精准诊断到企业运营的智能优化&#xff0…

Gateway 统一网关

一、初识 Gateway 1. 为什么需要网关 我们所有的服务可以让任何请求访问,但有些业务不是对外公开的,这就需要用网关来统一替我们筛选请求,它就像是房间的一道门,想进入房间就必须经过门。而请求想要访问微服务,就必须…

外包干了2个月,技术明显退步

回望过去,我是一名普通的本科生,于2019年通过校招有幸加入了南京某知名软件公司。那时的我,满怀着对未来的憧憬和热情,投入到了功能测试的岗位中。日复一日,年复一年,转眼间,我已经在这个岗位上…

第十九章 Vue组件之data函数

目录 一、引言 二、示例代码 2.1. 工程结构图 2.2. main.js 2.3. App.vue 2.4. BaseCount.vue 三、运行效果 一、引言 在Vue CLI脚手架中一个组件的data选项必须是一个函数,以此保证每个组件实例,维护独立的一份数据对象。每次创建新的组件实…

重新架构:从 Redis 到 SQLite 性能提升

在这篇博文中,他们用 SQLite 取代了 Redis,而令人惊讶的是,SQLite 的速度更快!有趣的是,Redis 是在本地运行,而 SQLite 是将数据存储在磁盘上。因此,这是内存(Redis)与磁…

springboot配置logback.xml遇到的几个问题

最近项目用到对日志脱敏,经过研究通过logback实现了对日志脱敏,上篇文章中详细讲解了如果配置。但是还是对logback的配置不太了解。比如springboot怎么加载这个logback.xml的。 首先,默认情况下,logback.xml文件是放在类目录下&am…