专栏首页Linyb极客之路网络编程之HTTP状态码详解

网络编程之HTTP状态码详解

一、状态码分类

HTTP状态码分为如下5类

总体范围

已定义范围

类别

100~199

100~101

信息

200~299

200~206

成功

300~399

300~305

重定向

400~499

400~417

客户端错误

500~599

500~505

服务器错误

二、状态码详细说明

100~199(已定义:100~101)

状态码

原因短语

含义

100

Continue( 继续)

收到了请求的起始部分, 客户端应该继续请求

101

Switching Protocols( 切换协议)

服务器正根据客户端的指示将协议切换成 Update首部列出的协议

200~299(已定义:200~206)

状态码

原因短语

含义

200

OK

服务器已成功处理请求

201

Created( 已创建)

对那些要服务器创建对象的请求来说, 资源已创建完毕

202

Accepted( 已接受)

请求已接受, 但服务器尚未处理

203

Non-Authoritative Information( 非权威信息)

服务器已将事务成功处理, 只是实体首部包含的信息不是来自原始服务器, 而是来自资源的副本

204

No Content( 没有内容)

响应报文包含一些首部和一个状态行, 但不包含实体的主体内容

205

Reset Content( 重置内容)

另一个主要用于浏览器的代码。 意思是浏览器应该重置当前页面上所有的 HTML 表单

206

Partial Content( 部分内容)

部分请求成功

300~399(已定义300~307)

状态码

原因短语

含义

300

Multiple Choices( 多项选择)

客户端请求了实际指向多个资源的 URL。 这个代码是和一个选项列表一起返回的, 然后用户就可以选择他希望使用的选项了

301

Moved Permanently( 永久搬离)

请求的 URL 已移走。 响应中应该包含一个 LocationURL, 说明资源现在所处的位置

302

Found( 已找到)

与状态码 301 类似, 但这里的搬离是临时的。 客户端应该用 Location 首部给出的 URL 对资源进行临时定位

303

See Other( 参见其他)

告诉客户端应该用另一个 URL 获取资源。 这个新的URL 位于响应报文的 Location 首部

304

Not Modified( 未修改)

客户端可以通过它们所包含的请求首部发起条件请求。 这个代码说明资源未发生过变化

305

Use Proxy( 使用代理)

必须通过代理访问资源, 代理的位置是在 Location首部中给出的

306

( 未用)

这个状态码当前并未使用

307

Temporary Redirect( 临时重定向)

和状态码 301 类似。 但客户端应该用 Location 首部给出的 URL对资源进行临时定位

400~499(已定义400~417)

状态码

原因短语

含义

400

Bad request( 坏请求)

告诉客户端它发送了一条异常请求

401

Unauthorized( 未授权)

与适当的首部一起返回, 在客户端获得资源访问权之前, 请它进行身份认证

402

Payment Required( 要求付款)

当前此状态码并未使用, 是为未来使用预留的

403

Forbidden( 禁止)

服务器拒绝了请求

404

Not Found( 未找到)

服务器无法找到所请求的 URL

405

Method Not Allowed( 不允许使用的方法)

请求中有一个所请求的 URI 不支持的方法。 响应中应该包含一个 Allow 首部,以告知客户端所请求的资源支持使用哪些方法

406

Not Acceptable( 无法接受)

客户端可以指定一些参数来说明希望接受哪些类型的实体。 服务器没有资源与客户端可接受的 URL 相匹配时可使用此代码

407

Proxy Authentication Required( 要求进行代理认证)

和状态码 401 类似, 但用于需要进行资源认证的代理服务器

408

Request Timeout( 请求超时)

如果客户端完成其请求时花费的时间太长, 服务器可以回送这个状态码并关闭连接

409

Conflict( 冲突)

发出的请求在资源上造成了一些冲突

410

Gone( 消失了)

除了服务器曾持有这些资源之外, 与状态码 404 类似

411

Length Required( 要求长度指示)

服务器要求在请求报文中包含Content-Length首部时会使用这个代码。发起的请求中若没有Content-Length 首部, 服务器是不会接受此资源请求的

412

Precondition Failed( 先决条件失败)

如果客户端发起了一个条件请求, 如果服务器无法满足其中的某个条件, 就返回这个响应码

413

Request Entity Too Large( 请求实体太大)

客户端发送的实体主体部分比服务器能够或者希望处理的要大

414

Request URI Too Long(请 求 URI太长)

客户端发送的请求所携带的请求 URL 超过了服务器能够或者希望处理的长度

415

Unsupported Media Type( 不支持的媒体类型)

服务器无法理解或不支持客户端所发送的实体的内容类型

416

Requested Range Not Satisfiable( 所请求的范围未得到满足)

请求报文请求的是某范围内的指定资源, 但那个范围无效,或者未得到满足

417

Expectation Failed( 无法满足期望)

请求的 Expect 首部包含了一个预期内容, 但服务器无法满足

500~599(已定义500~505)

状态码

原因短语

含义

500

Internal Server Error( 内 部 服 务 器错误)

服务器遇到了一个错误, 使其无法为请求提供服务

501

Not Implemented( 未实现)

服务器无法满足客户端请求的某个功能

502

Bad Gateway( 网关故障)

作为代理或网关使用的服务器遇到了来自响应链中上游的无效响应

503

Service Unavailable(未提供此服务)

服务器目前无法为请求提供服务, 但过一段时间就可以恢复服务

504

Gateway Timeout( 网关超时)

与状态码 408 类似, 但是响应来自网关或代理, 此网关或代理在等待另一台服务器的响应时出现了超时

505

HTTP Version Not Supported( 不支持的 HTTP 版本)

服务器收到的请求是以它不支持或不愿支持的协议版本表示的

本文分享自微信公众号 - Linyb极客之路(gh_c420b2cf6b47),作者:albert_knag

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 网络编程之HTTP协议的请求方法

    HTTP是一个基于TCP/IP通信协议来传递数据,包括html文件、图像、结果等,即是一个客户端和服务器端请求和应答的标准。

    lyb-geek
  • 通俗易懂的Nginx工作原理

    反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给...

    lyb-geek
  • 网络编程之抓包工具Fiddler入门

    1)要使用Fiddler进行抓包,首先需要确保Capture Traffic是开启的(安装后是默认开启的),勾选File->Capture Traffic,也可...

    lyb-geek
  • 关于HTTP状态码详细解析

    多种选择,请求的资源包括多个位置,响应可返回同一个资源特征与地址的列表用于用户终端选择。

    哲洛不闹
  • 常见HTTP/FTP/WebSockets状态码大全

    这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于HTTP/1.0协议中没有定义任何1...

    小弟调调
  • python爬虫从入门到放弃(二)之爬虫的原理

    在上文中我们说了:爬虫就是请求网站并提取数据的自动化程序。其中请求,提取,自动化是爬虫的关键!下面我们分析爬虫的基本流程 爬虫的基本流程 发起请求 通过HTTP...

    coders
  • HTTP协议中几个状态码

    用户7657330
  • jsonp-反向代理-CORS解决JS跨域问题的个人总结(更新 v2.0)

    各个方法都有各自的优缺点,但是目前前端开发方面比较常用的是 jsonp,反向代理,CORS:

    前端正义联盟
  • Http protocal

    200:OK GET 请求的资源对象;HEAD 对应请求资源的 entity-header 字段,不包含消息体;POST;请求行为的结果消息体;TRACE: 包...

    WindWant
  • 高并发下的抽奖优化

    由于项目发起了一个抽奖活动,发起活动之前给所有用户发短信提示他们购买了我们的产品有抽奖权益。然后用户上来进入抽奖页面点击爆增,过了一会儿页面就打不开了。后面查看...

    用户1516716

扫码关注云+社区

领取腾讯云代金券