Http请求报文:

http请求报文由3部分组成,请求行,请求头,请求体。

一、请求行:

请求方法、URL地址、协议版本

请求方法:POST、GET、DELETE、PUT、HEAD、OPTIONS、TRACE

二、请求头:

请求头包含于若干个属性,格式:“属性名:属性值”

下面是部分常用的请求头属性讲解:

 属性名     举例说明 
host 请求的web服务器域名地址    
accept 指定客户端接受数据类型的信息    
accept-language 接受语言  

en或en-us指英语,zh或zh--cn指中文 ;

zh-CN,zh;q=0.9表示客户端接收的语言为中文,权重系数为0.9

accept-encoding 浏览器发给服务器,声明浏览器支持的编码类型的

1.compress, gzip  支持compress 和gzip类型 ;
2.identity 默认类型;

3.* 支持所有类型 ;

Accept-Encoding: gzip;q=0.5, identity; q=1, *;q=0 ;

支持权重系数顺序支持: identity, gzip,其余类型不支持

authorization  身份验证    
cookie 浏览器用这个属性向服务器发送Cookie 格式: 属性1=属性值1;属性2=属性值2;  
content-type Body编码方式

1.application/x-www-form-urlencoded:表单数据向服务器提交时所采用的编码类型;

2.application/json:消息的主体是序列化后的JSON字符串;

3.multipart/form-data:文件上传;

 
user-agent 标识客户端身份的名称  

connection

 表示客户端与服务器的连接类型  默认:keep-alive

①Client发起一个包含Connection:keep-alive的请求(HTTP 1.1使用keep-alive为默认值)

②Server收到请求后:

如果Server支持keep-alive, 回复一个包含Conection:keep-alive的响应,不关闭连接。

如果Server不支持keep-alive,回复一个包含Connection:close的响应,关闭连接。

③如果Client收到包含Connection:keep-alive的响应,则向同个连接发送下一个请求,直到一方主动关闭连接。

注意: Connection:keep-alive 在很多情况下能够重用连接,减少资源消耗,缩短响应时间。例如,当浏览器需要多个文件时(如一个HTML文件和多个Image文件),不需要每次都去请求建立连接

upgrade-insecure-requests
升级为HTTPS请求

upgrade-insecure-requests:1

表示升级不安全的请求,会在加载HTTP资源时自动替换成HTTPS请求,让浏览器不再显示HTTPS页面中的HTTP请求警报。

HTTPS是以安全为目标的HTTP通道,所以在HTTPS承载的页面上不允许出现HTTP请求,一且出现就会提示或报错。

注:q:表示权重系数,范围是0=<q<= 1。q值越大,请求越倾向于获得其“;”之前的类型表示的内容。若没有指定q值,则默认为1,按从左到右排序;若被赋值为0,则表示浏览器不接受此内容类型。

Accept:常见的媒体格式

application/json : JSON数据格式

application/xhtml+xml :XHTML格式

application/xml : XML数据格式

application/atom+xml :Atom XML聚合格式

application/pdf :pdf格式

application/msword : Word文档格式

application/octet-stream : 二进制流数据(如常见的文件下载)

application/x-www-form-urlencoded : < form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)

text/html:html格式,浏览器在获取到这种文件时会自动调用html的解析器对文件进行相应的处理。

text/xml:纯文本格式

text/xml:XML格式

text/plain:将文件设置为纯文本的形式,浏览器在获取到这种文件时并不会对其进行处理

image/gif :gif图片格式

image/png:png图片格式

video/mpeg:视频

*/*:所有格式

三、请求体:

请求参数

====================================================================================

详细资料可以查看:

http 中文开发手册:https://www.php.cn/manual/view/35581.html

Http请求报文(请求行,请求头、请求体)的更多相关文章

  1. HTTP请求报文(请求行、请求头、请求体)

    HTTP协议 1.简介 HTTP协议(Hyper Text Transfer Protocol,超文本传输协议),是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的 ...

  2. Python编程系列---获取请求报文行中的URL的几种方法总结

    在浏览器访问web服务器的时候,服务器收到的是一个请求报文,大概GET请求的格式大概如下: 先随便拿到一个请求报文,蓝色即为我们要获取的 GET  /index.html  HTTP/1.1  Hos ...

  3. 重温Http协议--请求报文和响应报文

    http协议是位于应用层的协议,我们在日常浏览网页比如在导航网站请求百度首页的时候,会先通过http协议把请求做一个类似于编码的工作,发送给百度的服务器,然后在百度服务器响应请求时把相应的内容再通过h ...

  4. HTTP 请求报文 响应报文

    引言 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为了提供一种发 ...

  5. HTTP 请求报文 响应报文(转)

    引言 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为了提供一种发 ...

  6. HTTP请求报文解剖

    转自:https://www.iteye.com/topic/1124408 HTTP请求报文由3部分组成(请求行+请求头+请求体): 下面是一个实际的请求报文: ①是请求方法,GET和POST是最常 ...

  7. Http协议--请求报文和响应报文

           http协议是位于应用层的协议,我们在日常浏览网页比如在导航网站请求百度首页的时候,会先通过http协议把请求做一个类似于编码的工作,发送给百度的服务器,然后在百度服务器响应请求时把相应 ...

  8. HTTP请求报文、响应报文

    HTTP请求报文 HTTP请求报文由3部分组成(请求行+请求头+请求体): 请求行:①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE.HEAD.OPTIONS.PUT. ...

  9. HTTP请求协议中请求报文(Request Headers)跟响应报文(Response Headers)的简单理解

    背景 今儿个一新来的应届生问我,开发模式中所看到的web请求的请求头里的属性怎么理解,我便根据自己的经验随便拉开一个请求跟他聊了起来,顺便自己记录下文字版,以后再有交流直接发地址给他就好了,嘻嘻,机智 ...

  10. HTTP协议扫盲(七)请求报文之 GET、POST-FORM 和 POST-FILE

    一.get 1.页面代码 2.请求报文 3.小结 get请求没有报文体,所以请求报文没有content-type url上的query参数param11=val11&param12=val12 ...

随机推荐

  1. 《Vue.js 设计与实现》读书笔记 - 第9章、简单 Diff 算法

    第9章.简单 Diff 算法 9.1 减少 DOM 操作的性能开销 在之前的章节,如果新旧子节点的类型都是数组,我们会先卸载所有旧节点,再挂载所有新的子节点.但是如果存在相同类型的节点,我们完全可以复 ...

  2. 树莓派2 CentOS7.9 环境下编译 ZLMediaKit 备忘录

    查询系统架构 getconf LONG_BIT 查看是32 或 64位 arch uname -m 输出"x86_64"则为64位,输出"i686"或" ...

  3. 神经网络之卷积篇:详解经典网络(Classic networks)

    详解经典网络 首先看看LeNet-5的网络结构,假设有一张32×32×1的图片,LeNet-5可以识别图中的手写数字,比如像这样手写数字7.LeNet-5是针对灰度图片训练的,所以图片的大小只有32× ...

  4. 一图为你揭秘云数据库GaussDB管理平台亮点

    云数据库GaussDB管理平台(TPOPS)是一款即开即用.稳定可靠.管理便捷的数据库运维管理平台.通过该平台,用户可以快速部署安装GauSSDB,实现智能化运维,大幅度提升运维和管理效率.一图带你揭 ...

  5. costmap代价地图

    1 什么是costmap代价地图 在机器人进行路径规划时,我们需要明白规划算法是依靠什么在地图上来计算出来一条路径的.依靠的是gmapping扫描构建的一张环境全局地图,但是仅仅依靠一张原始的全局地图 ...

  6. cnblogs内容同步到51cto上的说明(声明)

    51CTO网站上的blog地址为:https://blog.51cto.com/u_15642578 该地址是个人在博客园cnblogs上的同步账号(https://cnblogs.com/xyz), ...

  7. git clone失败,超时,速度慢

    最近使用git这个工具,发现git clone指令经常由于网络问题导致失败.查找相关资料之后,找到办法为修改网址,具体为: 将 git clone https://github.com/alibaba ...

  8. JDK中的动态代理

    江苏 无锡 缪小东 写到代理模式这章,不得不提到JDK中的动态代理,它是java语言自身对动态代理的支持,类似于JDK中在java.util包中提供Observable类和Observer接口提供对观 ...

  9. PHP之常见问题

    汇总在PHP开发中遇到的一些问题 1.post提交参数缺失 场景: 在前端页面发起一个post提交的时候,查看payload中的数据是正常的, 但是在接收的时候,发现只有部分数据,算了一下,包含的数据 ...

  10. 链路追踪之Jaeger

    官方地址:https://www.jaegertracing.io/ [安装] 官方提供了两个安装方式, 1. 基于二进制(https://www.jaegertracing.io/download/ ...