HTTP图解笔记(六)—— 第6章 HTTP首部
前言
为啥第一章直接跳到第六章呢,因为...博主当初看书的时候挑着看..只看了第一章和第六章┗( ▔, ▔ )┛
HTTP图解对于不熟悉HTTP的小伙伴来说是很好的书籍,建议入手!
一、 HTTP报文首部

图 HTTP报文的结构

图 请求报文

图 响应报文
二、HTTP首部字段
1. 结构
首部字段名:字段值(一个首部字段可有多个字段值)
2. 通用首部字段

2.1 Cache-Control
- public:其他用户也可利用缓存
- private:只有当前用户可利用缓存
- no-cache:防止从缓存中返回过期的资源
- no-store:不进行缓存(通常请求或响应中包含机密信息,如登录接口)
- max-age:当缓存资源的缓存时间 < max-age时,可直接使用缓存资源;
- 当缓存资源的缓存时间 >= max-age时,缓存资源已过期;
- 当max-age = 0,缓存服务器需要将请求转发给源服务器。
- s-maxage:功能与 max-age 相同,但只适用于供多位用户使用的公共缓存服务器;当使用 s-maxage指令后,直接忽略 Expires 和 max-age
- must-revalidate:代理会向源服务器再次验证即将返回的响应缓存目前是否仍然有效
2.2 Connection
- Connection:不再转发的首部字段名(把这个删除后再转发喔~)
- Connection:close(当服务器想明确断开连接时,则指定Connection的值为Close)
- Connection:Keep-Alive(HTTP/1.1版本开始默认连接都是持久连接)
2.3 Date:创建HTTP报文的日期和时间
3. 请求首部字段

3.1 Accept
客户端能够处理的媒体类型及媒体类型的相对优先级(q=权重值,取0~1,1为最大值)
3.2 Accept-Charset
客户端支持的字符集
3.3 Accept-Encoding
客户端支持的内容编码(压缩)
3.4 Authorization
客户端的用来告知服务器的认证信息(证书值)
3.5 Host
请求的资源服务器的主机名(域名/IP)+端口,如www.poloyy.site:8080
3.6 Referer
告知服务器请求的原始资源的URI
3.7 User-Agent
将浏览器信息和客户端名称等信息传达给服务器
4. 响应首部字段

5. 实体首部字段

6. End-to-End 首部和 Hop-by-Hop首部
- 端到端首部(End-to-End Header)
- 逐跳首部(Hop-by-Hop Header)
HTTP图解笔记(六)—— 第6章 HTTP首部的更多相关文章
- 《深入理解java虚拟机》读书笔记六——第七章
第七章 虚拟机类加载机制 1.类加载的时机 虚拟机的类加载机制: 虚拟机把描述类的数据从class文件中加载到内存,并对数据进行校验.转换解析和初始化,最终形成了可以被虚拟机直接使用的Java类型,这 ...
- 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索
第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果.时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微软 ...
- java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)
java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...
- Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第四章:Direct 3D初始化
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第四章:Direct 3D初始化 学习目标 对Direct 3D编程在 ...
- 《MFC游戏开发》笔记六 图像双缓冲技术:实现一个流畅的动画
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9334121 作者:七十一雾央 新浪微博:http:/ ...
- 《深入Java虚拟机学习笔记》- 第19章 方法的调用与返回
<深入Java虚拟机学习笔记>- 第19章 方法的调用与返回
- 《深入Java虚拟机学习笔记》- 第16章 控制流
<深入Java虚拟机学习笔记>- 第16章 控制流
- 《深入Java虚拟机学习笔记》- 第17章 异常
<深入Java虚拟机学习笔记>- 第17章 异常
- 《深入Java虚拟机学习笔记》- 第13章 逻辑运算
<深入Java虚拟机学习笔记>- 第13章 浮点运算
- 《深入Java虚拟机学习笔记》- 第14章 浮点运算
<深入Java虚拟机学习笔记>- 第13章 浮点运算
随机推荐
- SourceYard 制作源代码包
本文带大家走进SourceYard开发之旅 在项目开发中,将一个大的项目拆为多个小项目解耦,减少模块之间的耦合.因为如果将代码放在一起,即使有团队的约束,但只要能写出的代码就会有小伙伴写出,很快就发现 ...
- 【75.28%】【codeforces 764B】Decoding
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...
- codeforces gym100801 Problem J. Journey to the “The World’s Start”
传送门:https://codeforces.com/gym/100801 题意: 小明坐地铁,现在有n-1种类型的地铁卡卖,现在小明需要买一种地铁票,使得他可以在t的时间内到达终点站,地铁票的属性为 ...
- 【Docker】镜像分层存储与镜像精简
Linux操作系统 Linux操作系统由内核空间和用户空间组成. 内核空间是kernel,用户空间是rootfs, 不同Linux发行版的区别主要是rootfs.比如 Ubuntu 14.04 使用 ...
- 苹果笔记本修改pycharm for mac 修改字体大小
实在是隐藏的太深了,无语
- 010.MFC_Progress
一.建立名为processCtrl的MFC工程,添加Progress Control 和 button控件.修改button Caption属性为start,ID属性为IDC_BTN_START 为进 ...
- 理解C/C++的复杂声明
理解C/C++的复杂声明 曾经碰到过让你迷惑不解.类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复C/C ...
- 彩票历史记录分析工具 -- 通过实例学习wpf开发
前言 虽然本人对彩票不感兴趣,仍然有不少人对此情有独钟.他们花大量时间精力去分析彩票的历史记录,企图发现规律,为下一次投注做指导,希望“赢的“”概率增大.不管研究历史记录是否有意义,我用软件实现了对彩 ...
- Python深层拷贝
import copy new_instance = copy.deepcopy(instance)
- 分布式全局唯一ID生成策略
为什么分布式系统需要用到ID生成系统 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识.如在美团点评的金融.支付.餐饮.酒店.猫眼电影等产品的系统中,数据日渐增长,对数据库的分库分表后需要有 ...