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章 浮点运算
随机推荐
- 关于Spring JavaWeb工程中的ContextRefreshedEvent事件
在应用启动时,通常想在此时预加载一些资源,全局使用. Spring会在操作应用上下文时,使用ApplicationEventPublisher触发相关ApplicationContextEvent,我 ...
- js粘贴图片并显示
var fromDa; $(function(){ document.getElementById('app').addEventListener('paste', function(e) { if( ...
- mysql 添加索引,ALTER TABLE和CREATE INDEX的区别
nvicat-->mysql表设计-->创建索引. (1)使用ALTER TABLE语句创建索引,其中包括普通索引.UNIQUE索引和PRIMARY KEY索引3种创建索引的格式: PRI ...
- Linux 内核接口
USB 端点被绑在接口中. USB 接口只处理一类 USB 逻辑连接, 例如一个鼠标, 一个键盘, 或者一个音频流. 一些 USB 设备有多个接口, 例如一个 USB 扬声器可能有 2 个接口: 一个 ...
- 企业级Docker私有仓库Harbor
一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docke ...
- Python进程池使用
from multiprocessing import Pool from time import sleep def Foo(i): sleep(1) print(i) if __name__ == ...
- 什么?我往Redis写的数据怎么没了?
大概是因为int没有因为change方法而改变原值,所以就说它传过去的是自身的值,因而叫值传递:User对象经过change方法后,对象的数据变了,就认为是因为实参和形参指向的是同一片内存空间,内存空 ...
- go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时])
目录 go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时]) 静态配置 flag注入 在线热加载配置 远程配置中心 go微 ...
- CodeForces 1182D
图论的思维题,太秀了,网上答案也不多,我就也来bb吧 总之47个样例姑且是过了,不知道还有没有反例: 会求树的重心和中心了,挺好 #include<cstdio> #include< ...
- ELK学习实验010:Logstash简介
Logstash是具有实时流水线功能的开源数据收集引擎.Logstash可以动态统一来自不同来源的数据,并将数据规范化为您选择的目标.清除所有数据并使其民主化,以用于各种高级下游分析和可视化用例. 虽 ...