HTTP 03 HTTP 报文
客户端的HTTP报文, 叫做请求报文
服务器端的叫做 响应报文.
HTTP 报文本身是由多行 (用 CR+LF 作换行符) 数据构成的字符串文本.
HTTP 报文大致分为报文首部 和 报文主体 两部分.
请求报文及响应报文的结构
在传输的过程中, 还可以对报文进行压缩和编码. 另外要对报文进行分块, 以小块(数据包)的形式进行传输
获取部分内容的范围请求
以前, 用户不能使用高速的互联网时, 下载比较大的图片就很吃力, 如果下载过程中遇到网络中断的情况, 那就必须重头开始, 为了解决上述问题, 需要一种可恢复的机制. 所谓恢复是指能从之前下载中断处恢复下载.
Content-Range: 可以用来制定请求部分内容.
针对范围请求, 响应会返回状态码 206 partial content 响应报文, 如果服务器无法响应范围请求, 则会返回状态码 200 OK 和 完整的实体内容.
返回状态码
200 OK 一切OK
204 No Content 请求已经成功处理, 但在返回的响应报文中不包含实体的主体部分, 另外, 也不允许返回任何实体主体
206 partial content, 表示响应了部分请求
301 Moved Permanently 永久重定向, 状态表示请求的资源已经被分配了新的 URI, 以后使用新的URI
302 Found 临时重定向, 表示当次请求的资源已被分配了新的 URI, 希望用户本次能使用新的URI
303 See Other 根 302 类似, 并且要求用户下次请求时必须使用 GET 方法.
注意: 当 301, 302, 303 响应状态码返回时, 几乎所有的浏览器都会把 POST 改成 GET, 并删除请求报文内的主题, 之后请求会自动再次发送.
304 Not Modified 根以上的3XX不同, 跟重定向没啥关系, 表示附带条件的请求, 如果条件不满足, 返回304
307 Temporary Redirect, 临时重定向, 与 302 相同
4XX 客户端错误
400 Bad Request, 请求报文中包含语法错误
401 Unauthorized 没有权限, 认证失败
403 Forbidden 请求的资源被服务器拒绝(服务器无需提供理由)
404 Not Found, 服务器上没看到你请求的资源
5XX 服务器错误
500 Internal Server Error, 表明请求过程中服务器端发生了错误.
503 Service Unavailable, 服务器暂时处于超负载或正在进行停机维护, 现在无法处理请求.
HTTP 03 HTTP 报文的更多相关文章
- 银联ISO8583报文解析过程
主密钥: aabbccddeeff11223344556677889900 1.从签到报文中获取工作密钥,包括MACKEY明文,PINKEY明文 签到: 12-03-31 16:38:09----&g ...
- 小白误入(<<<绝没有针对>>>)企业级架构介绍与IP tables防火墙介绍
内容详细 架构图 架构图详解 架构: 把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并 ...
- 2016-1-28 图解HTTP(03)
6.2.5 非HTTP/1.1首部字段 不限于RFC2616中定义的47种首部字段,还有Cookie.Set-Cookie和Content-Disposition等在其他RFC中首部字段 ...
- 报文格式:xml 、定长报文、变长报文
目前接触到的报文格式有三种:xml .定长报文.变长报文 . 此处只做简单介绍,日后应该会深入学习到三者之间如何解析,再继续更新.——2016.9.23 XML XML 被设计用来传输和存储数据. H ...
- ISO8583报文协议
最开始时,金融系统只有IBM这些大的公司来提供设备,象各种主机与终端等.在各个计算机设备之间,需要交换数据.我们知道数据是通过网络来传送的,而在网络上传送的数据都是基于0或1这样的二进制数据,如果没有 ...
- [UDP] UDP 报文数据(CoAP protocol)
UDP 机器控制项目 协议报文格式: Ver + T + TKL + Code + MessageID + 11111111 + Command ...
- 根据第三方提供的wsdl报文(axis2开发),进行的webservice应用的开发实例
接口应用名称:NgCallService 入参和出参信息 入参和出参报文信息 入参: <?xml version="1.0" encoding="UTF-8&quo ...
- Http报文 状态码
一.HTTP报文 1.HTTP报文介绍 HTTP报文:用于HTTP协议交互的信息. HTTP报文由报文头部和报文主体(非必须)构成,中间由空行来分隔. 1.1 请求报文:客户端发起的报文. 1).报文 ...
- Http报文格式学习及Get和Post主要区别总结
HTTP(HyperText Transport Protocol,超文本传送协议) http请求数据包的格式:头部(request line + header)+ 数据(data) 头部和数据包体 ...
随机推荐
- SSH(Spring SpringMVC Hibernate)框架整合
项目说明: 使用SSH(Spring SpringMVC Hibernate)框架整合添加部门功能 项目结构 1.导入依赖jar包 <!--单测--> <dependency&g ...
- MySQL环境变量的配置
找到mysql安装的bin目录下复制此路径: 我的电脑右击属性====>>高级系统设置==>>环境变量 找到path 单击编辑将路径粘贴到变量值的最前面,在bin后面加上英文的 ...
- Ural2110 : Remove or Maximize
设最大的数为$w$,若$n>k+\log w$,那么显然所有$1$都可以保留,否则现在$n\leq k+\log w$. 如果$w\leq 100000$,那么可以DP,设$f[i][j]$表示 ...
- 如何绘制UML图?
首先推荐在线绘制UML的网址:https://www.processon.com/,很好用. 在软件开发过程中,开发人员往往需要通过绘制类图来理清业务的实现思路,从而方便代码实现,也便于后期的代码维护 ...
- Java 接口 Closeable
该接口位于java.io包下,声明如下:public interface Closeable extends AutoCloseable.关闭流并释放与该流关联的所有系统资源.如果已经关闭该流,则调用 ...
- UE4入门(二)建立和打开项目
1.双击电脑桌面上的Unreal Engine 2.见下图 建立c++或者蓝图项目: 蓝图是什么? 蓝图种类: 接口:
- HTML5 学习08——Input 类型、表单元素及属性
注意:并不是所有的主流浏览器都支持新的input类型,不过您已经可以在所有主流的浏览器中使用它们了.即使不被支持,仍然可以显示为常规的文本域. (1)Input 类型: color color 类型: ...
- [Nuget]使用Nuget管理工具包
摘要 这里演示如何使用Nuget对类库进行打包,并将类库上传到nuget上面. 步骤 1.在nuget官网注册账号,并登陆. https://www.nuget.org 2.下载Nuget.exe,并 ...
- 简易RPC框架-SPI
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- docker dcm4chee
The received images should show up in the UI of the Archive at http://localhost:8080/dcm4chee-arc/ui ...