You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
3.3 KiB

---
title: 响应状态码
date: 2017-12-23 17:20:33
tags:
- 后端
- 网络编程
- 服务器开发
---
## 一、状态码大类
| 状态码分类 | 说明 |
| ---------- | ------------------------------------------------------------ |
| 1xx | **响应中**——临时状态码,表示请求已经接受,告诉客户端应该继续请求或者如果它已经完成则忽略它 |
| 2xx | **成功**——表示请求已经被成功接收,处理已完成 |
| 3xx | **重定向**——重定向到其它地方:它让客户端再发起一个请求以完成整个处理。 |
| 4xx | **客户端错误**——处理发生错误,责任在客户端,如:客户端的请求一个不存在的资源,客户端未被授权,禁止访问等 |
| 5xx | **服务器端错误**——处理发生错误,责任在服务端,如:服务端抛出异常,路由出错,HTTP版本不支持等 |
状态码大全:https://cloud.tencent.com/developer/chapter/13553
## 二、常见的响应状态码
| 状态码 | 英文描述 | 解释 |
| ------ | -------------------------------------- | ------------------------------------------------------------ |
| 200 | **`OK`** | 客户端请求成功,即**处理成功**,这是我们最想看到的状态码 |
| 302 | **`Found`** | 指示所请求的资源已移动到由`Location`响应头给定的 URL,浏览器会自动重新访问到这个页面 |
| 304 | **`Not Modified`** | 告诉客户端,你请求的资源至上次取得后,服务端并未更改,你直接用你本地缓存吧。隐式重定向 |
| 400 | **`Bad Request`** | 客户端请求有**语法错误**,不能被服务器所理解 |
| 403 | **`Forbidden`** | 服务器收到请求,但是**拒绝提供服务**,比如:没有权限访问相关资源 |
| 404 | **`Not Found`** | **请求资源不存在**,一般是URL输入有误,或者网站资源被删除了 |
| 428 | **`Precondition Required`** | **服务器要求有条件的请求**,告诉客户端要想访问该资源,必须携带特定的请求头 |
| 429 | **`Too Many Requests`** | **太多请求**,可以限制客户端请求某个资源的数量,配合 Retry-After(多长时间后可以请求)响应头一起使用 |
| 431 | **` Request Header Fields Too Large`** | **请求头太大**,服务器不愿意处理请求,因为它的头部字段太大。请求可以在减少请求头域的大小后重新提交。 |
| 405 | **`Method Not Allowed`** | 请求方式有误,比如应该用GET请求方式的资源,用了POST |
| 500 | **`Internal Server Error`** | **服务器发生不可预期的错误**。服务器出异常了,赶紧看日志去吧 |
| 503 | **`Service Unavailable`** | **服务器尚未准备好处理请求**,服务器刚刚启动,还未初始化好 |
| 511 | **`Network Authentication Required`** | **客户端需要进行身份验证才能获得网络访问权限** |