HTTP报文结构详解
HTTP简介
HTTP是我们非常熟悉的协议,叫做超本文传输协议,也就是我们浏览网页需要的协议。
HTTP的本质是通过默认端口80的TCP来传输数据。
HTTP是请求-回答机制。客户端请求数据,服务器然后响应数据。
服务器不能主动发送数据给客户端
HTTP报文介绍
HTTP报文的格式如下:
HTTP报文主要由 起始行、头部、BODY三部分组成
HTTP报文又细分为请求包和响应包。
请求包
1、 请求行 包括 Method(GET、POST、DELETE、PUT),URI(资源在目标主机上的绝对路径)、Version(HTTP的版本,1.1,2.0,3.0)
2、 请求头 基于Key-Value,不同属性之间用 换行符隔开
3、 body body和请求行之间用一个空行隔开,body就是post要传输的数据
响应包
1、状态行 version(HTTP版本)、Status Code (状态码200、404、500等)、Reason(状态描述)
2、响应头 也是基于Key-Value,每个属性之间用CTLF换行符隔开
3、 body body与响应头之间也用换行符隔开。
头部字段详解
HTTP中头部字段基于Key-Value,用来携带信息,用户也可以往里面自定义对应的属性。
字段主要分为三类:请求字段、响应字段、通用字段
1、请求字段
请求字段是请求头专用的字段。
Host
想要请求的主机的地址。
**1、**IP+端口
**2、**域名+端口
端口可以省略,如果省略的话,为默认的端口80
和请求行中的URI合并为真正的URL
User-Agent
HTTP的代理,也就是浏览器的类型
Accept
请求希望接收的数据类型
2、响应字段
响应字段是响应头专用的字段
Expires
响应包的过期时间
Server
服务器的名字
3、通用字段
通用字段是既可以在请求头使用又可以在响应头中使用的字段
Content-Type
Body的数据格式
Content-Length
Body的长度
HTTP报文结构详解相关推荐
- 搞一下 车载以太网实战 | 01 车载以太网帧结构详解
前言 搞SOA.搞 AP & CP AUTOSAR.搞异构SoC.搞车载以太网.搞车载OS等就找搞一下汽车电子. 全系内容可在<搞一下汽车电子>后台回复 "系列" ...
- Linux TC 流量控制与排队规则 qdisc 树型结构详解(以HTB和RED为例)
1. 背景 Linux 操作系统中的流量控制器 TC (Traffic Control) 用于Linux内核的流量控制,它规定建立处理数据包的队列,并定义队列中的数据包被发送的方式,从而实现对流量的控 ...
- Windows GPT磁盘GUID结构详解
前一篇 Windows磁盘MBR结构详解 中我们介绍了Basic Disk中的Master Boot Record结构.GPT Disk作为Windows 2003以后引入的分区结构.使用了GUID分 ...
- TEXTMETRIC 结构详解
TEXTMETRIC 结构详解 函数GetTextMetrics可以获取一个字体文本度量并将它放入一个类型为TEXTMETRIC的数据结构中,该结构如下所示: typedef struct ta TE ...
- 微信小程序01【目录结构详解、视图与渲染、事件、input、scroll-view】
学习地址:https://www.bilibili.com/video/BV1sx411z77P 笔记01:https://blog.csdn.net/weixin_44949135/article/ ...
- angular 标准目录结构_Angular-cli新建项目目录结构详解
Angular-cli新建项目目录结构详解 在上一篇博客中我们已经通过Angular CLI命令行工具创建出来一个全新的Angular项目,要想写项目,首先我们要先搞清楚项目的目录结构是怎样的,每个文 ...
- [java] 虚拟机(JVM)底层结构详解[转]
[java] 虚拟机(JVM)底层结构详解[转] 本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 在以前的博客里面,我们介绍了在java领 ...
- mysql数据库存储引擎和索引的描述_Mysql InnoDB引擎的索引与存储结构详解
前言 在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的. 而MySql数据库提供了多种存储引擎.用户可以根据不同的需求为数据表选择不同的存储引擎,用户也 ...
- JMETER目录结构详解
JMETER目录结构详解 JMETER安装完成之后会有很多目录文件,我们对JM ...
- Android4.0源码目录结构详解
Android4.0源码目录结构详解 Android4.0与2.1目录差不多 alsa这块,注意external/tinyalsa下有: include/tinyalsa/asoundlib.h mi ...
最新文章
- mysql 5.7.13安装_安装MySQL 5.7.13
- jibx_Jibx Jersey2集成
- matlab 大括号
- 终端I/O之行控制函数
- 矩阵 计算机应用,《计算机视觉算法:基于OpenCV的计算机应用开发》 —3.3 元素级矩阵操作...
- photoshop常用快捷键大全
- 【已解决】报异常:java.lang.ArithmeticException: / by zero
- 【LoadRunner】解决LR11无法录制Chrome浏览器脚本问题
- 使用Scylla进行OSINT信息收集
- 了解计算机PS,PS教程:你应该了解的PS基础绘图工具
- codeblock添加tools实现git log查看
- ISIS协议原理与配置
- win7网络适配器_win7网络重置
- linux telnet 传文件命令,telnet 传输文件
- ads1278_24位高性能模数转换器ADS1274/ADS1278及其应用
- AD18无法仿真问题的解决
- r语言赋值为na_R语言数据框中,用0替代NA缺失值
- git pull origin master与git pull --rebase origin master的区别
- 2007高校bbs上20个睿智冷笑话
- Mac OSX 快捷键命令行