第三章

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的更多相关文章

  1. 图解HTTP 2/11

    第一章 了解Web及网络基础 *HTTP(HyperText Transfer Protocal, 超文本传输协议),可以说,Web是建立在HTTP协议上通信的. *3项WWW(World Wide ...

  2. Qt5.7学习

    一 Qt简介(Build your world with Qt) 二 Qt5.7.0的安装 三 Qt系统构造库及常用类 四 信号(signal)与槽(slot)通信机制 五 QtDesigner开发工 ...

  3. 大数据技术之_16_Scala学习_08_数据结构(下)-集合操作+模式匹配

    第十一章 数据结构(下)-集合操作11.1 集合元素的映射-map11.1.1 map 映射函数的操作11.1.2 高阶函数基本使用案例1+案例211.1.3 使用 map 映射函数来解决11.1.4 ...

  4. js中排序方法sort() 和 reverse()

    reverse() 作用:反转原数组. 用法: array.reverse(); 图解: sort() 作用:对原数组进行排序.默认将每个数组项 先 转换为字符串 再 进行字符串对比后升序排序. 用法 ...

  5. Java教程-修炼

    在2020这个特殊的时期,在家就是为国家做贡献!一切都会好起来的,加油中国!! Java 第一章 Java概述 1.1 Java历史 1.2 Java语言最主要的特点 1.3 Java环境搭建 1.3 ...

  6. 自学Java第五章——《面向对象的基本特征》

    面向对象的基本特征: 1.封装 2.继承 3.多态 6.1 封装 1.好处: (1)隐藏实现细节,方便使用者使用 (2)安全,可以控制可见范围 2.如何实现封装? 通过权限修饰符 面试题:请按照可见范 ...

  7. AI 音辨世界:艺术小白的我,靠这个AI模型,速识音乐流派选择音乐 ⛵

    作者:韩信子@ShowMeAI 数据分析实战系列:https://www.showmeai.tech/tutorials/40 机器学习实战系列:https://www.showmeai.tech/t ...

  8. 地区sql

    /*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : lo ...

  9. (转) 干货 | 图解LSTM神经网络架构及其11种变体(附论文)

    干货 | 图解LSTM神经网络架构及其11种变体(附论文) 2016-10-02 机器之心 选自FastML 作者:Zygmunt Z. 机器之心编译  参与:老红.李亚洲 就像雨季后非洲大草原许多野 ...

随机推荐

  1. Netflix OSS套件一站式学习驿站

    Netflix OSS是由Netflix公司主导开发的一套代码框架/库,目的是用于解决大规模集群的分布式系统的一连串问题,如:服务发现.负载均衡.熔断降级.限流.网关等.对于当代的Java开发者来说, ...

  2. P2585 三色二叉树 题解

    题目 一棵二叉树可以按照如下规则表示成一个由0.1.2组成的字符序列,我们称之为"二叉树序列S": \[S=\left\{ \begin{aligned} 0 &\ \ 表 ...

  3. 深入浅出了解CDN

    背景: 本文公众号来源:漫话编程 虎牙直播2000W+人在线观看,直播间还不卡,据了解,2018年1月,阿里云为虎牙提供了边缘节点服务(ENS).基于阿里云ENS,可以轻松地将业务模块放到边缘运行,在 ...

  4. Aspose下载图片

    /// <summary> /// 把DataTable数据按照Excel模板导出到Excel /// </summary> /// <param name=" ...

  5. GAN网络从入门教程(三)之DCGAN原理

    目录 DCGAN简介 DCGAN的特点 几个重要概念 下采样(subsampled) 上采样(upsampling) 反卷积(Deconvolution) 批标准化(Batch Normalizati ...

  6. 根据URL下载图片到本地

    /// <summary> /// 下载图片 /// </summary> /// <param name="picUrl">图片Http地址& ...

  7. Java中的堆和栈以及堆栈的区别

    在正式内容开始之前要说明一点,我们经常所说的堆栈堆栈是堆和栈统称,堆是堆,栈是栈,合在一起统称堆栈: 1.栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Jav ...

  8. 数据可视化实例(八): 边缘直方图(matplotlib,pandas)

    https://datawhalechina.github.io/pms50/#/chapter6/chapter6 边缘直方图 (Marginal Histogram) 边缘直方图具有沿 X 和 Y ...

  9. Ethical Hacking - GAINING ACCESS(5)

    Server Side Attack Install Metasploit cummunity/pro and active it. Create a new project for the targ ...

  10. Python Ethical Hacking - TROJANS Analysis(4)

    Adding Icons to Generated Executables Prepare a proper icon file. https://www.iconfinder.com/ Conver ...