图解HTTP笔记第二章
在两台计算机之间使用 HTTP 协议通信时,在一条通信线路上必定有一端是客户端,另一端则是服务器端。
HTTP协议规定,请求从客户端发出,最后服务器端响应该请求并返回。换句话说,肯定是先从客户端开始建立通信的,服务器端在没有接收到请求之前不会发送响应。
请求报文的构成:
响应报文构成:
但是,HTTP协议是不保存状态的协议,一次请求对应一次响应。协议本身并不保留之前一切的请求或响应报文的信息。这是为了更快地处理大量事务,确保协议的可伸缩性,而特意把 HTTP 协议设计成如此简单的。---------》(引出Cookie,一部分响应数据存储在客户端,但是都是不重要的数据,下次请求带着setCookie发出)
告知服务器意图的 HTTP 方法:
GET 方法:用来请求访问已被 URI 识别的资源。指定的资源经服务器端解析后返回响应内容
POST 方法:用来传输实体的主体。浏览器要把一条信息传输到服务器
PUT 方法:用来传输文件。就像 FTP 协议的文件上传一样,要求在请求报文的主体中包含文件内容,然后保存到请求 URI 指定的位置(一般web网站不开放使用)
HEAD 方法和 GET 方法一样,获取响应,只是不返回报文主体部分。用于确认 URI 的有效性及资源更新的日期时间等
DELETE 方法:用来删除文件,是与 PUT 相反的方法。DELETE 方法按请求 URI 删除指定的资源 (一般web网站不开放使用)
OPTIONS 方法:用来查询针对请求 URI 指定的资源支持的方法。
TRACE 方法:是让 Web 服务器端将之前的请求通信环回给客户端的方法。
CONNECT 方法:要求在与代理服务器通信时建立隧道,实现用隧道协议进行 TCP 通信
HTTP/1.0 和 HTTP/1.1 支持的方法:
持久连接节省通信量:
HTTP 协议的初始版本中,每进行一次 HTTP 通信就要断开一次 TCP 连接。
比如,使用浏览器浏览一个包含多张图片的 HTML 页面时,在发送请求访问 HTML 页面资源的同时,也会请求该 HTML 页面里包含的其他资源。因此,每次的请求都会造成无谓的 TCP 连接建立和断开,增加通信量的开销。
引出持久连接------》旨在建立 1 次 TCP 连接后进行多次请求和响应的交互,减轻了服务器端的负载。毫无疑问,除了服务器端,客户端也需要支持持久连接。
在持久连接的基础上演变出管线化。从前发送请求后需等待并收到响应,才能发送下一个请求。管线化技术出现后,不用等待响应亦可直接发送下一个请求。
使用 Cookie 的状态管理:
Cookie 会根据从服务器端发送的响应报文内的一个叫做 Set-Cookie 的首部字段信息,通知客户端保存 Cookie。
图解HTTP笔记第二章相关推荐
- 深入理解 C 指针阅读笔记 -- 第二章
Chapter2.h #ifndef __CHAPTER_2_ #define __CHAPTER_2_/*<深入理解C指针>学习笔记 -- 第二章*//*内存泄露的两种形式1.忘记回收内 ...
- 《Go语言圣经》学习笔记 第二章 程序结构
Go语言圣经学习笔记 第二章 程序结构 目录 命名 声明 变量 赋值 类型 包和文件 作用域 注:学习<Go语言圣经>笔记,PDF点击下载,建议看书. Go语言小白学习笔记,几乎是书上的内 ...
- Web前端开发笔记——第二章 HTML语言 第四节 超链接标签
目录 前言 一.超链接标签 (一)链接其它子网页 (二)链接其它站点 (三)虚拟超链接 二.从当前页面链接到指定位置 三.链接的访问情况 四.在新窗口中打开链接 例题 结语 前言 本节介绍超链接标签即 ...
- 《计算传播学导论》读书笔记——第二章文本分析简介
<计算传播学导论>读书笔记--第二章文本分析简介 第一节 文本分析研究现状 常用文本挖掘技术 第二节 文本分析与传播学研究 (一)为什么文本挖掘技术逐渐受到传播学者的关注 (二)不同文本分 ...
- Computational Optimal Transport 笔记——第二章(2)
Computational Optimal Transport 笔记--第二章(2) 符号说明 2. 理论基础 2.3 Kantorovich Relaxation SUM 2.4 Optimal T ...
- PhalAPI学习笔记 ——— 第二章接口服务请求
PhalAPI学习笔记 --- 第二章接口服务请求 前言 接口服务请求 接口服务请求案例 自定义接口路由 开启匹配路由 配置路由规则 nginx apache 服务请求 结束语 前言 公司业务需要转学 ...
- 操作系统笔记 第二章
操作系统笔记 第二章 1.有两个程序:A程序按顺序使用CPU10秒.设备甲5秒.CPU5秒.设备乙10秒.CPU10秒:B程序按顺序使用设备甲10秒.CPU 10秒.CPU5秒.设备乙5秒.CPU 5 ...
- JavaSE入门0基础笔记 第二章Java基础语法
JavaSE入门0基础笔记 第二章Java基础语法 1.运算符 1.1算术运算符 1.1.1运算符和表达式 1.1.2 算术运算符 1.1.3字符的"+"操作 1.1.4 字符串中 ...
- 【王道考研】操作系统 笔记 第二章上 进程调度
本文内容,1.进程和线程 2.进程调度 特此鸣谢王道考研 本文参考王道考研的相关课程 若有侵权请联系,立删 其余笔记链接: [王道考研]操作系统笔记 第一章_才疏学浅743的博客-CSDN博客 [王道 ...
最新文章
- python 错误处理 assert
- 汇编语言 段前缀的使用 复制内存单元数据到指定位置
- scala使用reduce和fold方法遍历集合的所有元素
- Divide and conquer:Dropping tests(POJ 2976)
- 信息学奥赛一本通 1177:奇数单增序列 | OpenJudge NOI 1.10 02:奇数单增序列
- 计算机输入代码0怎么能输入,电脑蓝屏0xv0000098错误代码怎么回事_电脑蓝屏0xv0000098错误代码的解决方法...
- 1.组合数据类型练习: 分别定义字符串,列表,元组,字典,集合,并进行遍历。 总结列表,元组,字典,集合的联系与区别。...
- android强制停止运行,如何在android中单击强制停止时运行服务
- php libswf,PHP停解析swf文件头
- Java中9大内置基本数据类型Class实例和数组的Class实例(转载)
- 如何在C#中播放一些AVI短片,并且使背景透明
- Matlab实现的数学模型(2020新整理)
- socket调试工具、socket调试软件、tcp调试工具、tcp调试软件(sokit)
- 视频修复工具修复损坏avi视频文件
- Flutter 旋转动画
- 计算机网络故障是指啥,网络故障管理
- python中获取网页元素
- 深入 JavaScript 中的默认参数!
- 编辑器\编译器\IDE
- Spring Boot配置文件---约定大于配置
热门文章
- matlab与origin关联,Matlab与Origin软件在“电路及磁路”教学中的应用
- Android 音乐播放器模块心得卡顿优化
- eclipse怎么查看jsp生成的class文件
- java mdb文件_java读取mdb文件
- 2023年全球有哪些科技趋势值得期待
- Auto.js 手机版 图色工具
- EventBus使用
- 火车票售票系统C语言大作业,基于C语言实现简单的12306火车售票系统
- linux系统管理设计ppt,操作系统原理与Linux实例设计--第二章.ppt
- 【hadoop】Archive命令使用