前言

为啥第一章直接跳到第六章呢,因为...博主当初看书的时候挑着看..只看了第一章和第六章┗( ▔, ▔ )┛

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

  1. 《深入理解java虚拟机》读书笔记六——第七章

    第七章 虚拟机类加载机制 1.类加载的时机 虚拟机的类加载机制: 虚拟机把描述类的数据从class文件中加载到内存,并对数据进行校验.转换解析和初始化,最终形成了可以被虚拟机直接使用的Java类型,这 ...

  2. 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索

    第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果.时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微软 ...

  3. java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)

    java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...

  4. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第四章:Direct 3D初始化

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第四章:Direct 3D初始化 学习目标 对Direct 3D编程在 ...

  5. 《MFC游戏开发》笔记六 图像双缓冲技术:实现一个流畅的动画

    本系列文章由七十一雾央编写,转载请注明出处.  http://blog.csdn.net/u011371356/article/details/9334121 作者:七十一雾央 新浪微博:http:/ ...

  6. 《深入Java虚拟机学习笔记》- 第19章 方法的调用与返回

    <深入Java虚拟机学习笔记>- 第19章 方法的调用与返回

  7. 《深入Java虚拟机学习笔记》- 第16章 控制流

    <深入Java虚拟机学习笔记>- 第16章 控制流

  8. 《深入Java虚拟机学习笔记》- 第17章 异常

    <深入Java虚拟机学习笔记>- 第17章 异常

  9. 《深入Java虚拟机学习笔记》- 第13章 逻辑运算

    <深入Java虚拟机学习笔记>- 第13章 浮点运算

  10. 《深入Java虚拟机学习笔记》- 第14章 浮点运算

    <深入Java虚拟机学习笔记>- 第13章 浮点运算

随机推荐

  1. 【codeforces 764C】Timofey and a tree

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  2. python基础十二之生成器进阶

    生成器表达式 (满足条件的元素或其相关的操作 for 元素 in 可迭代对象 if 条件) g = (i for i in range(10)) for i in g: print(i) egg_li ...

  3. Redux action 状态

    action  不同的状态,设置不同的action.type [就是一个名字],返回对应的数据 不同的状态返回不同的  接口数据

  4. element-ui—dialog使用过程中的坑

    场景一:我们将dialog写成一个可复用的公共组件用于显示不同内容(如表格操作中的修改或添加的弹窗),之后发现dialog的遮罩将弹出层(点击修改或添加后理应由一个弹窗显示出来)都盖住了,而我想要的效 ...

  5. 2018-3-31-C#-谁改了我的代码

    title author date CreateTime categories C# 谁改了我的代码 lindexi 2018-3-31 21:15:3 +0800 2018-2-13 17:23:3 ...

  6. H3C通过端口ID决定端口角色

  7. 原生js添加鼠标事件的兼容性写法

    兼容pc和移动端,还兼容了surface平板. surface平板特别坑,既可以用鼠标也能用触摸屏,也就是说同时有touch事件和mouse事件. function addEvent(_target, ...

  8. H3C擦除配置

  9. 递归&时间模块&os模块

    递归 递归调用 一个函数,调用了自身,称为递归调用 递归函数:一个会调用自身的函数称为递归函数 凡是循环能干的事,递归都能干 方式: 写出临界条件 找这一次和上一次的关系 假设当前函数已经能用,调用自 ...

  10. Linux 内核热插拔事件产生

    一个热插拔事件是一个从内核到用户空间的通知, 在系统配置中有事情已经改变. 无论何 时一个 kobject 被创建或销毁就产生它们. 这样事件被产生, 例如, 当一个数字摄像头 使用一个 USB 线缆 ...