HTTP常见状态码
1XX信息性状态码
服务器收到请求,正在处理
- 100 Continue:服务器准备接受请求主体,客户端应当发送请求主体
- 101 Switching Protocols:切换协议,服务器接收客户端在Upgrade首部字段中要求改变应用协议的请求
2XX成功状态码
操作被成功接收并正常处理完毕
- 200 OK:请求被正常处理
- 201 Created:成功请求并创建了新的资源
- 202 Accepted:已接收请求,但是未处理完成
- 203 Non-Authoritative Information:非授权信息,请求成功但是meta信息不在原始的服务器
- 204 No Content:请求已成功处理,但是返回的响应报文中不含实体的主体部分
- 205 Reset Content:重置内容,服务器处理成功,客户端应重置文档视图,通过此返回码可清除浏览器的表单域
- 206 Partial Content:客户端进行了范围请求,服务器只执行请求中的GET方法,响应报文中通过Content-Range指定范围的资源。
3XX重定向状态码
浏览器需要执行某些特殊处理以正确处理请求
- 300 Multiple Choices:请求的资源可包括多个位置,响应可返回一个资源特征与地址的列表用于用户选择
- 301 Moved Permanently:永久性重定向,请求资源已被永久移动到新的URI,返回信息会包含新的URI,浏览器自动定向到新的URI,如果该地址被存为书签的话,会被重新保存
- 302 Found:临时重定向,跳转的地址通过Location指定,与301相比不会更新书签
- 303 See Other:与302状态码有相似功能,只是它希望客户端在请求一个URI的时候,能通过GET方法重定向到另一个URI上
- 304 Not Modified:所请求的资源未修改,服务不返回任何资源,客户端会使用缓存的资源
- 305 Use Proxy:所请求的资源必须通过代理访问
- 307 Temporary Redirect:临时重定向,与302类似,但是302标准禁止POST变换为GET,但是实际使用时大家并不会遵守,而307会遵守浏览器标准,不会将POST变为GET
4XX客户端错误状态码
客户端发生错误导致服务器无法处理请求
- 400 Bad Request:请求报文语法有误,服务器无法识别
- 401 Unauthorized:请求需要认证
- 403 Forbidden:请求的对应资源禁止被访问
- 404 Not Found:服务器无法找到对应资源
- 405 Method Not Allowed:请求的方法不允许访问
- 406 Not Acceptable:服务器无法根据客户端请求的内容完成请求
- 407 Proxy Authentication Required:与401类似,但是需要使用代理进行授权
- 408 Request Time-out:请求超时
- 409 Conflict:使用PUT请求时,服务器处理请求时发生了冲突
- 410 Gone:资源已经不存在,不同于404的地方在于,该资源之前有,现在删除了
- 411 Length Required:请求头中没有携带Content-Length
- 412 Precondition Failed:请求信息的先决条件错误
- 413 Request Entity Too Large:客户端请求主体大于服务器一次能够处理的大小
- 414 Request-URI Too Large:请求的URI太长
- 415 Unsupported Media Type:服务器无法处理请求的媒体格式
- 416 Requested range not satisfiable:客户端请求的范围无效
5XX服务器错误状态码
服务器本身发生错误导致处理请求出错
- 500 Internal Server Error:服务器内部错误
- 501 Not Implemented:服务器不支持请求的功能
- 502 Bad Gateway:网关错误
- 503 Service Unavailable:由于超载或系统维护,服务器暂时的无法处理客户端的请求
- 504 Gateway Time-out:网关超时
- 505 HTTP Version not supported:服务器不支持请求的HTTP协议版本