图解HTTP 6/11
第三章
HTTP报文内的HTTP信息
1.用于http协议交互的信息被称为HTTP报文。请求端(客户端)的HTTP报文叫做请求报文,响应端(服务器端 )的叫做响应报文。
2.请求报文的结构
请求行:包含用于请求的方法,请求URI和HTTP版本。
首部字段:包含表示请求和响应的各种条件和属性的各类首部。一般有4种,分别是:通用首部,请求首部和实体首部 。
其他:可能包含HTTP的RFC里未定义的首部(Cookie等)
报文主体。
3.HTTP可以在传输中通过编码来提升传输速率,但是编码需要计算机来完成,因此会消耗更多的CPU等资源。
4.报文(message):是HTTP通信的基本单位,由8为组字节流组成,通过HTTP通信传输。
实体(entity):作为请求或响应的有效载荷数据(补充项)被传输,其内容由实体首部和实体主体组成
第四章
返回结果的HTTP状态码
1.状态码的职责是当客户端向服务器端发送请求时,描述返回的请求结果
2.状态码的类别
1xx information(信息性状态码) 接收的请求正在处理
2xx success(成功状态码) 请求正常处理完毕
200(OK):表示请求已正常处理
204(NO CONTENT):请求处理成功,但是没有资源可以返回。
206(Partial Content):只对资源某一部分的请求。
3xx redirection(重定向状态码) 需要进行附加操作以完成请求
4xx client error(客户端错误状态码)服务器无法处理请求
400(Bad Request):请求报文中存在语法错误。
401(Unauthorized):表示发送的请求需要有通过HTTP认证的认证信息。
403(Forbidden):不允许访问那个资源。
404(Not Found):表明服务器上无法找到请求的资源。
5xx server error(服务器错误状态码)服务器处理请求出错
500(Internal Server Error):临时的故障
503(Service Unavailable):服务器暂时处于超负载或正在进行停机维护,现在无法处理请求。
第五章
与HTTP协作的Web服务器
1.通信数据转发程序:代理、网关、隧道。
2.代理:代理是一种有转发功能的应用程序,它扮演了位于服务器和客户端“中间人”的角色,接受由客户端发送的请求并转发给服务器,同时也接受服务器返回的响应并转发给客户端。
3.网关:网关是转发其他服务器通信数据的服务器,接受从客户端发送来的请求时,它就像自己拥有资源的资源服务器一样对请求进行处理。
4.隧道:隧道是在相隔甚远的客户端和服务器两者之间进行中转,并保持双方通信连接的应用程序。
第六章
HTTP首部
1.HTTP协议的请求和响应报文中必定包含HTTP首部
2.HTTP报文的结构:报文首部(在客户端和服务器处理时起至关重要作用的信息几乎都在这边),报文主体(所需要的用户和资源的信息都在这边)
3.HTTP请求报文,由方法、URI、HTTP版本、HTTP首部字段等部分构成。
4.4种首部字段的类型
通用首部字段(General Header Fields):请求报文和响应报文两方都会使用的首部。
请求首部字段(Request Header Fields):丛客户端向服务端发送请求报文时使用的首部。补充了请求的附加内容、客户端信息、响应内容相关优先级等信息。
响应首部字段(Response Header Fields):从服务器端向客户端返回响应报文时使用的首部。补充了响应的附加内容,也会要求客户端附加额外的内容信息。
实体首部字段(Enity Header Fields):针对请求报文和响应报文的实体部分使用的首部。补充了资源内容,更新时间等与实体有关的信息。
5.非HTTP协议中,还有Cookie,Set-Cookie和Content-Disposition等。
6.外加很多具体的字段。
图解HTTP 6/11的更多相关文章
- 图解HTTP 2/11
第一章 了解Web及网络基础 *HTTP(HyperText Transfer Protocal, 超文本传输协议),可以说,Web是建立在HTTP协议上通信的. *3项WWW(World Wide ...
- Qt5.7学习
一 Qt简介(Build your world with Qt) 二 Qt5.7.0的安装 三 Qt系统构造库及常用类 四 信号(signal)与槽(slot)通信机制 五 QtDesigner开发工 ...
- 大数据技术之_16_Scala学习_08_数据结构(下)-集合操作+模式匹配
第十一章 数据结构(下)-集合操作11.1 集合元素的映射-map11.1.1 map 映射函数的操作11.1.2 高阶函数基本使用案例1+案例211.1.3 使用 map 映射函数来解决11.1.4 ...
- js中排序方法sort() 和 reverse()
reverse() 作用:反转原数组. 用法: array.reverse(); 图解: sort() 作用:对原数组进行排序.默认将每个数组项 先 转换为字符串 再 进行字符串对比后升序排序. 用法 ...
- Java教程-修炼
在2020这个特殊的时期,在家就是为国家做贡献!一切都会好起来的,加油中国!! Java 第一章 Java概述 1.1 Java历史 1.2 Java语言最主要的特点 1.3 Java环境搭建 1.3 ...
- 自学Java第五章——《面向对象的基本特征》
面向对象的基本特征: 1.封装 2.继承 3.多态 6.1 封装 1.好处: (1)隐藏实现细节,方便使用者使用 (2)安全,可以控制可见范围 2.如何实现封装? 通过权限修饰符 面试题:请按照可见范 ...
- AI 音辨世界:艺术小白的我,靠这个AI模型,速识音乐流派选择音乐 ⛵
作者:韩信子@ShowMeAI 数据分析实战系列:https://www.showmeai.tech/tutorials/40 机器学习实战系列:https://www.showmeai.tech/t ...
- 地区sql
/*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : lo ...
- (转) 干货 | 图解LSTM神经网络架构及其11种变体(附论文)
干货 | 图解LSTM神经网络架构及其11种变体(附论文) 2016-10-02 机器之心 选自FastML 作者:Zygmunt Z. 机器之心编译 参与:老红.李亚洲 就像雨季后非洲大草原许多野 ...
随机推荐
- Netflix OSS套件一站式学习驿站
Netflix OSS是由Netflix公司主导开发的一套代码框架/库,目的是用于解决大规模集群的分布式系统的一连串问题,如:服务发现.负载均衡.熔断降级.限流.网关等.对于当代的Java开发者来说, ...
- P2585 三色二叉树 题解
题目 一棵二叉树可以按照如下规则表示成一个由0.1.2组成的字符序列,我们称之为"二叉树序列S": \[S=\left\{ \begin{aligned} 0 &\ \ 表 ...
- 深入浅出了解CDN
背景: 本文公众号来源:漫话编程 虎牙直播2000W+人在线观看,直播间还不卡,据了解,2018年1月,阿里云为虎牙提供了边缘节点服务(ENS).基于阿里云ENS,可以轻松地将业务模块放到边缘运行,在 ...
- Aspose下载图片
/// <summary> /// 把DataTable数据按照Excel模板导出到Excel /// </summary> /// <param name=" ...
- GAN网络从入门教程(三)之DCGAN原理
目录 DCGAN简介 DCGAN的特点 几个重要概念 下采样(subsampled) 上采样(upsampling) 反卷积(Deconvolution) 批标准化(Batch Normalizati ...
- 根据URL下载图片到本地
/// <summary> /// 下载图片 /// </summary> /// <param name="picUrl">图片Http地址& ...
- Java中的堆和栈以及堆栈的区别
在正式内容开始之前要说明一点,我们经常所说的堆栈堆栈是堆和栈统称,堆是堆,栈是栈,合在一起统称堆栈: 1.栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Jav ...
- 数据可视化实例(八): 边缘直方图(matplotlib,pandas)
https://datawhalechina.github.io/pms50/#/chapter6/chapter6 边缘直方图 (Marginal Histogram) 边缘直方图具有沿 X 和 Y ...
- Ethical Hacking - GAINING ACCESS(5)
Server Side Attack Install Metasploit cummunity/pro and active it. Create a new project for the targ ...
- Python Ethical Hacking - TROJANS Analysis(4)
Adding Icons to Generated Executables Prepare a proper icon file. https://www.iconfinder.com/ Conver ...