HTTP报文首部

HTTP 协议的请求和响应报文中必定包含 HTTP 首部。 首部内容为客户端和服务器分别处理请求和响应提供所需要的信息。 对于客户端用户来说, 这些信息中的大部分内容都无须亲自查看。

HTTP请求报文

在请求中,HTTP报文由方法、URI、HTTP版本、HTTP首部字段等部分构成。

HTTP响应报文

在响应中,HTTP报文由HTTP版本、状态码(数字和原因短语)、HTTP首部字段3部分构成。

HTTP首部字段

HTTP首部字段是构成HTTP报文的要素之一。在客户端与服务器之间以HTTP协议进行通信的过程中,无论是请求还是响应都会使用首部字段,它能起到传递额外重要信息的作用。

使用首部字段是为了给浏览器和服务器提供报文主体大小、 所使用的语言、 认证信息等内容。

若 HTTP 首部字段重复了会如何?

当 HTTP 报文首部中出现了两个或两个以上具有相同首部字段名时会怎么样? 这种情况在规范内尚未明确, 根据浏览器内部处 理逻辑的不同, 结果可能并不一致。 有些浏览器会优先处理第一次出现的首部字段, 而有些则会优先处理最后出现的首部字段。

HTTP/1.1规范定义了如下47种首部字段

通用首部字段

请求首部字段

响应首部字段

实体首部字段

还有如Cookie、Set-Cookie等其他RFC中定义的首部字段统一归纳在RFC4229Header Field Registrations中。

具体每个字段的使用和取值参考《图解HTTP》。

图解HTTP总结(6)——HTTP首部的更多相关文章

  1. 图解 HTTP 笔记(六)——HTTP 首部

    本章主要讲解了 HTTP 首部的结构,已经首部中各字段的用法. 一.HTTP 报文首部 上图是 HTTP 请求报文的结构. HTTP 请求报文由方法.URI.HTTP 版本.HTTP 首部字段等组成. ...

  2. HTTP图解笔记(六)—— 第6章 HTTP首部

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

  3. 读《图解HTTP》有感-(HTTP首部)

    写在前面 该章节是对请求报文及响应报文的首部信息进行解析.通过该章节的学习,相信大家对首部结构,及各个首部字段的作用有个基本的了解 正文 HTTP报文由HTTP报文首部.空行以及HTTP报文主体组成. ...

  4. 图解HTTP(六)HTTP首部

    一.HTTP报文的结构: 二.4种首部字段: 1. 通用首部字段 请求报文和响应报文都会使用的首部. 首部字段名 说明 Cache-Control 控制缓存行为 Connection 逐跳首部.连接的 ...

  5. 《图解Http》 2-6章: 基础,报文,状态码,首部。

    HTTP协议和Cookie 是stateless协议,自身不对请求和响应之间的通信状态进行保存.但随着技术发展,为了实现保存状态的功能,引入了Cookie技术. Cookie在请求和响应报文中写入信息 ...

  6. 《图解HTTP》阅读笔记--第六章--HTTP首部

    第六章.HTTP首部 <非常重要且恐怖的一章了> HTTP报文=报文首部+(CR+LF)+报文实体 首部字段:HTTP报文首部字段=(首部字段名:字段值)们---类型*4: 通用首部字段( ...

  7. 图解HTTP第六章:HTTP首部

    学习HTTP首部的结构和首部中各字段的用法. HTTP首部字段 使用首部字段是为了给浏览器和server提供报文主体大小.所使用的语言.认证信息等内容. 首部字段相应单个HTTP首部能够有多个值.假设 ...

  8. 《图解HTTP》读书笔记

    目前国内讲解HTTP协议的书是在太少了,记忆中有两本被誉为经典的书<HTTP权威指南>与<TCP/IP详解,卷1>,但内容晦涩难懂,学习难度较大.其实,HTTP协议并不复杂,理 ...

  9. HTTP图解(大牛必经之路)

    本节内容 俗话说好的开发,底层知识必须过硬,不然再创新的技术,你也理解不深入,比如python web开发工程师,想要学习任何一个框架,底层都是http和socket,底层抓牢了,学起来会很轻松,所以 ...

随机推荐

  1. output引用类型

    1.创建存储过程,将参数avg设置为引用参数,可以对参数有反馈作用 ), @avg float output) as select @avg=AVG(price) from goods where g ...

  2. C#之Clone

    因为类的实例是引用类型,要想用原有的类中的实例的数据的话,既要想创建原对象的一个副本的话,只能用clone方法. Clone方法分为深clone和浅clone 在C#中提供了浅clone的方法,即为M ...

  3. [转]Linq语法一

    LINQ即语言集成查询,是.NET Framework 3.5中新增的功能.其功能类似于数据库中的SQL语句(实际上LINQ就是针对.NET Framework的SQL):提供标准的.易于学习的查询和 ...

  4. Mysql 求时间 between 昨天 and 上个月的今天 等时间函数

    问题: Mysql表中一列create_time,类型datetime(YYYY-MM-DD HH:MM:SS),想获取上个月今天到昨天的数据. select * from 表名 where date ...

  5. 零基础逆向工程37_Win32_11_事件_线程同步

    1 内核对象 前面已经学过线程和互斥体两个内核对象.此节讲了事件这个内核对象.前面提出了内核对象这个概念,可能不太清晰,简单来说内核对象就是系统层的东西. 1.1 小结内核对象: 进程.线程.事件.互 ...

  6. Android OS Startup

    OS puts emphases on how to provide interfaces to user's APPs for using hardware device in the conven ...

  7. WebRTC协议

    webrtc协议介绍 MDN webrtc协议 ICE 交互式连接建立Interactive Connectivity Establishment (ICE) 是一个允许你的浏览器和对端浏览器建立连接 ...

  8. 利用PCHunter结束各种进程

    http://www.epoolsoft.com/ 经测试,可结束主动防御等.

  9. C++学习之拷贝构造函数

    嘛是拷贝构造函数? 如果一个构造函数的第一个参数是’自身类‘ ‘类型’的引用,且任何额外参数都有默认值,则此构造函数是拷贝构造函数.如: [代码1] 1 2 3 4 5 6 class A{ publ ...

  10. tomcat7 的The Apache Tomcat Native library which allows optimal performance 的解决

    1.        用Myeclipse启动tomcat7启动时可能会收到下面的信息: 七月 24, 2014 10:13:30 上午 org.apache.catalina.core.AprLife ...