HTTP常用状态码

Wesley13
• 阅读 687

####1. 2XX 成功 200 OK 表示从客户端发来的请求在服务器端被正常处理了

204 No Content 代表服务器接收的请求已成功处理,但在返回的响应报文中不含实体的主体部分.另外,也不予许返回任何实体的主体.

206 Partial Content 表示客户端进行了范围请求(Range), 而服务器成功执行了这部分的GET请求.响应报文中包含由Content-Range指定范围的实体内容.
####2. 3XX 重定向 301 Moved Permanently 永久性重定向.表示请求的资源已被分配了新的URI, 以后应使用资源现在所指的URI.服务器返回此响应时,会自动将请求者转到新位置.

302 Found 临时性重定向.表示服务器目前正在从不同位置的页面响应请求,但请求者应继续使用原有位置来进行以后的请求. HTTP1.1在介绍302中有说明,如果客户端发出非GET或HEAD请求后,收到服务器的302状态码,那么不能自动发起重定向,除非得到用户确认. 但是很多浏览器都把302当做303处理了,他们获取到HTTP响应报文头部的Location字段信息,并发起一个GET请求. (301,302标准是禁止将POST方法改变成GET方法的)

303 See Other 表示服务器正在从不同的URI响应请求, 并且应该使用该资源的GET方法.它是为了允许POST请求重定向到GET请求.

304 Not Modified 表示客户端发送附带If-Match/If-Modified-Since/If-None-Match/If-Range/If-Unmodified-Since等条件的请求, 但条件未满足的情况. 一般是自从上次请求后,请求的资源未发生变化,服务器会返回304.304状态码返回时不包含任何响应的主体部分.

307 Temporary Redirect 临时性重定向.该状态码的描述与302相同. 由于很多浏览器对302的处理不符合标准,所以HTTP/1.1添加303和307来明确告诉客户端需要进行怎样的处理.
####3. 4XX 客户端错误 400 Bad Request 表示请求报文中存在语法错误.

401 Unauthorized 表示发送的请求需要有通过HTTP认证(BASIC认证,DIGEST认证)的认证信息.若之前已经进行过一次请求,则表示用户认证失败. 返回含有401的响应必须包含一个适用于被请求资源的WWW-Authenticate首部字段用以质询用户信息.当浏览器初次接收到401响应,会弹出认证用 的对话窗口.

403 Forbidden 表明服务器拒绝了请求.服务器可以在响应实体中描述拒绝原因(不必须). 通常为获得文件系统的访问授权,或访问权限出现某些问题(从未授权的发送源IP地址试图访问)等情况会发生403. 如果服务器拒绝请求又不想说明原因时可以使用404代替.

404 Not Found 服务器无法找到请求的URI.
####4. 5XX 服务器错误 500 Internal Server Error 服务器端在执行请求时发生错误.可能是Web应用存在bug或故障.

503 Service Unavailable 表明服务器暂时处于超负载或者正在进行停机维护,现在无法处理请求.503表示这是临时情况.如果事先得知解除以上情况需要的时间,可以写入 Retry-After首部字段返回给客户端.
参考:《图解HTTP》,RFC 2616

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
java将前端的json数组字符串转换为列表
记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表。前端数据转化与请求varcontracts{id:'1',name:'yanggb合同1'},{id:'2',name:'yanggb合同2'},{id:'3',name:'yang
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Caomeinico Caomeinico
3年前
这些HTTP协议状态码你知道吗?
使用ASP.NET/PHP/JSP或者javascript都会用到http的不同状态,一些常见的状态码为:200–服务器成功返回网页404–请求的网页不存在503–服务不可用1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码说明100(继续)请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等
Wesley13 Wesley13
3年前
Oracle一张表中实现对一个字段不同值和总值的统计(多个count)
需求:统计WAIT\_ORDER表中的工单总数、未处理工单总数、已完成工单总数、未完成工单总数。表结构:为了举例子方便,WAIT\_ORDER表只有两个字段,分别是ID、STATUS,其中STATUS为工单的状态。1表示未处理,2表示已完成,3表示未完成总数。 SQL:  1.SELECT   2
Wesley13 Wesley13
3年前
HTTP请求响应返回状态
1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态码。100(继续)请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换。2xx(成功)表示成功处理了请求的状态码。200(成功)服
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
十月飞翔 十月飞翔
2年前
http协议中各个响应状态返回值(200、400、404、500等)的含义
1.该类型状态码表示接收到请求并且继续处理100:客户端必须继续发出请求。101:客户端要求服务器根据请求转换HTTP协议版本。2.该类型状态码表示动作被成功接收、理解和接受。200,表明该请求被成功地完成,所请求的资源发送到客户端。201,提示知道新文件的URL。202,接受并处理,但处理未完成。203,返回信息不确定或不完整。204,收到请求,但返回信息
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这