【积硅计划】http协议基础
method--请求的方法,get或者postpath-to-resource--请求的资源http/version-number--http协议的版本号当method为get时,body为空response消息包括3部分:1、响应行 2、响应 header 3、body
http/version-number--http协议的版本号
100 Continue继续收到了请求的起始部分,客户端应该继续请求 101 Switching Protocols切换协议服务器正根据客户端的指示将协议切换成Update Header列出的协议 200 ok服务器成功处理了请求 201 Created以创建对于那些要服务器创建对象的请求来说,资源已创建完毕。 202 Accepted已接受请求已接受, 但服务器尚未处理 203 Non-Authoritative Information非权威信息服务器已将事务成功处理,只是实体Header包含的信息不
是来自原始服务器,而是来自资源的副本。204 No Content无内容 Response中包含一些Header和一个状态行, 但不包括实体的主题内容
(没有response body205 Reset Content重置内容 另一个主要用于浏览器的代码。意思是浏览器应该重置当前页面上
所有的HTML表单。206 Partial Content部分内容 部分请求成功 300 Multiple Choices多项选择 客户端请求了实际指向多个资源的URL。这个代码是和一个选项列表一
起返回的,然后用户就可以选择他希望的选项了301 Moved Permanently已移走 请求的URL已移走。Response中应该包含一个Location URL, 说明资源
现在所处的位置302 Found已找到 与状态码301类似。但这里的移除是临时的。 客户端会使用Location中
给出的URL,重新发送新的HTTP request303 See Other参见其他 类似302 304 Not Modified未修改 客户的缓存资源是最新的, 要客户端使用缓存 305 Use Proxy使用代理 必须通过代理访问资源, 代理的地址在Response 的Location中 306 未使用 未使用 307 Temporary Redirect临时重定向 类似302 400 Bad Request坏请求 告诉客户端,它发送了一个错误的请求。 401 Unauthorized未授权 需要客户端对自己认证 402 Payment Required要求付款 这个状态还没被使用, 保留给将来用 403 Forbidden禁止 请求被服务器拒绝了 404 Not Found未找到 未找到资源 405 Method Not Allowed不允许使用的方法 不支持该Request的方法 406 Not Acceptable无法接受 407 Proxy Authentication Required请求
进行代理认证与状态码401类似, 用于需要进行认证的代理服务器 408 Request Timeout请求超时 如果客户端完成请求时花费的时间太长, 服务器可以回送这个状态码并
关闭连接409 Conflict冲突 发出的请求在资源上造成了一些冲突 410 Gone消失了 服务器曾经有这个资源,现在没有了, 与状态码404类似 411 Length Required要求长度指示 服务器要求在Request中包含Content-Length。 412 Precondition Failed先决条件失败 413 Request Entity Too Large请求实体太大 客户端发送的实体主体部分比服务器能够或者希望处理的要 414 Request URI Too Long请求的url太长 客户端发送的请求所携带的URL超过了服务器能够或者希望处理的长度 415 Unsupported Media Type不支持的媒体类型 服务器无法理解或不支持客户端所发送的实体的内容类型 416 Requested Range Not Satisfiable所请求
的范围未得到满足417 Expectation Failed无法满足期望 500 Internal Server Error内部服务器错误 服务器遇到一个错误,使其无法为请求提供服务 501 Not Implemented未实现 客户端发起的请求超出服务器的能力范围(比如,使用了服务器不支持的请求
方法)时,使用此状态码。502 Bad Gateway网管鼓掌 代理使用的服务器遇到了上游的无效响应 503 Service Unavailable未提供此服务 服务器目前无法为请求提供服务,但过一段时间就可以恢复服务 504 Gateway Timeout网关超时 与状态吗408类似, 但是响应来自网关或代理,此网关或代理在等待另一台
服务器的响应时出现了超时505 HTTP Version Not Supported
不支持的http版本服务器收到的请求使用了它不支持的HTTP协议版本。 有些服务器不支持HTTP
早期的HTTP协议版本,也不支持太高的协议版本
request header主要内容
*内容编码类型(Content-Encoding)gzip -- 采用GNU zip压缩compress -- 采用unix的文件压缩程序deflate -- 采用zlib格式压缩identity -- 表明没有对实体进行编码
gzip,compress,deflate都是无损压缩算法,可以减少传输报文的大小,不会导致信息损失。其中gzip效率最高
【积硅计划】http协议基础的更多相关文章
- 【积硅计划】html标签
一.基础 在html中,标签通常是由开始标签和结束标签组成,开始标签用<标签名>,结束标签用</标签名> 元素是指包括开始标签和结束标签在内的整体,内容是指出 ...
- TCP/IP协议基础(转)
转自 http://www.chinaunix.net 作者:Bernardus160 发表于:2003-12-03 17:33:15 TCP/IP协议基础 -------------------- ...
- 小白日记27:kali渗透测试之Web渗透-Http协议基础,WEB
Http协议基础 Web技术发展[http://www.cnblogs.com/ProgrammerGE/articles/1824657.html] 静态WEB[网页] 动态WEB 属于一种应用程序 ...
- HTTP协议基础与实验
一. HTTP协议(Hypetext Transfer Protoacal,超文本传输协议) HTTP协议规定了Web基本的运作过程,以及Web服务器之间的通信细节. Http协议采用客户端/服务器端 ...
- udp协议基础(转自疯狂java讲义)
第17章 网络编程 17.4 基于UDP协议的网络编程 UDP协议是一种不可靠的网络协议,它在通信实例的两端各建立一个Socket,但这两个Socket之间并没有虚拟链路,这两个Socket只是发 ...
- UART串口协议基础1
Louis kaly.liu@163.com 串口协议基础 1 串口概述 串口由收发器组成.发送器是通过TxD引脚发送串行数据,接收器是通过RxD引脚接收串行数据. 发送器和接收器都利用了一个移位寄存 ...
- 接口测试培训:HTTP协议基础
接口测试培训:HTTP协议基础 引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展. ...
- 【RL-TCPnet网络教程】第41章 HTTP超文本传输协议基础知识
第41章 HTTP超文本传输协议基础知识 本章节为大家讲解HTTP(HyperText Transfer Protocol,超文本传输协议),从本章节开始,正式进入嵌入式Web的设计和学习. ...
- 【RL-TCPnet网络教程】第35章 FTP文件传输协议基础知识
第35章 FTP文件传输协议基础知识 本章节为大家讲解FTP(File Transfer Protocol,文件传输协议)的基础知识,方便后面章节的实战操作. (本章的知识点主要整理自网络) ...
随机推荐
- (整理)C#实现UDP广播
(一) IP地址解析 IP地址的类型:XXX.XXX.XXX.XXXA类: 1.0.0.1--126.255.255.254 最高位是0: 1个字节的网络地址和3个地址的主机地址 测试地址:127.X ...
- Redis多机功能介绍
Redis多机功能目的:以单台Redis服务器过渡到多台Redis服务器 Redis单机在生产环境中存在的问题 1.内存容量不足 Redis使用内存来存书数据库中的数据,但是对于一台机器来说,硬件的内 ...
- 实验比较python中的range和xrange
1 结论: 全用xrange,除非你需要使用返回的列表 2 实验一:性能对比 实验环境:win7 ,64位系统 python2.7 import time StartTime=time.time() ...
- 使用Spring的Property文件存储测试数据 - 编写测试和调用测试数据
准备好测试数据后,我们可以开始编写测试了,在测试用例中调用我们property文件中的测试数据. 我自己写了一个TestCase作为所有测试类基类,基类中定义了两个变量来代表之前建好的两个测试数据文件 ...
- Unity AssetBundles and Resources指引 (四) AssetBundle使用模式
本文内容主要翻译自下面这篇文章 https://unity3d.com/cn/learn/tutorials/topics/best-practices/guide-assetbundles-and- ...
- Sublime Text 2/3中Autoprefixer失效解决方法
###Sublime Text 2/3中Autoprefixer失效解决方法: 相信每个前端er都会使用Subl这款工具吧,因为它有上千款开源的插件,而且功能各异,这里给大家带来的是标题中Autopr ...
- [翻译]AlphaGO留给我们的东西
来源:http://headlines.yahoo.co.jp/hl?a=20160317-00000049-cnippou-krhttp://headlines.yahoo.co.jp/hl?a=2 ...
- opecv轮廓匹配,可以用于去噪
一个跟轮廓相关的最常用到的功能是匹配两个轮廓.如果有两个轮廓,如何比较它们;或者如何比较一个轮廓和另一个抽象模板. 矩 比较两个轮廓最简洁的方式是比较他们的轮廓矩.这里先简短介绍一个矩的含义.简单的说 ...
- MySQL(二)
一.外键 外键是设置当前表中的某一列与别一数据表中的主键列关联.主要目的是控制与外键表中的数据,保持数据一致性,完整性,也就是说:当前表中这一列的数据必须是关联外键列中的某一数据,而且相关联的两个数据 ...
- 是否连接VPN
//需要导入ifadds头文件 //是否连接VPN - (BOOL)isVPNConnected{ struct ifaddrs *interfaces = NULL; struct ...