作为一个前端,应该是基本前端技术向下向上延伸,我个人的定义基本前端技术就是javascript,html,css等,向下是服务器,浏览器,协议,javascript等引擎原理等等,向上是框架,前端架构,项目管理。
当然纯是个人观点,如果不对,请原谅我的无知。
今天就看看状态码,HTTP 1.1协议 RFC2615 (协议已经废弃,依然就有很好的参考价值),Status Code
RFC2615被拆分为如下。
- RFC7230 - HTTP/1.1: Message Syntax and Routing
- RFC7231 - HTTP/1.1: Semantics and Content
- RFC7232 - HTTP/1.1: Conditional Requests
- RFC7233 - HTTP/1.1: Range Requests
- RFC7234 - HTTP/1.1: Caching
- RFC7235 - HTTP/1.1: Authentication
当然这些都不影响我们认识HTTP Status Code,在 RFC7231罗列的有30多个,当然我们常用的并没有多少个,一起来看看。
状态码的职责是当客户向服务器端发送请求时,描述返回的请求结果。借助状态码,用户可以知道服务器端是真诚的请求还是出现了错误。
状态码 | 类别 | 描述 |
1XX | Information(信息性状态码) | 接收的请求正在处理 |
2XX | Success(成功状态码) | 请求正常处理完毕 |
3XX | Redirection(重定向状态码) | 需要进行附加的操作完成请求 |
4XX | Client Error(客户端错误状态码) | 服务器无法处理请求 |
5XX | Server Error(服务器错误状态码) | 服务端处理请求出错 |
Informational 1xx
100 Continue
101 Switching Protocols
Successful 2xx
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
Redirection 3xx
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
305 Use Proxy
306 (Unused)
307 Temporary Redirect
Client Error 4xx -- 客户端错误
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
413 Payload Too Large
414 URI Too Long
415 Unsupported Media Type
417 Expectation Failed
426 Upgrade Required
Server Error 5xx - -服务器错误
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
常用的:一半一半吧。
101:转换协议,websoket,http2的时候会出现
200:成功
201:已创建。 一般是调用PUT方法表示创建成功后返回。 不常用
202:已经接收请求,没有处理完毕。
204:成功,不返回实体。
301:永久性转移
302:临时性转移
303:和302类似,但是要求使用GET方法获取资源。
304:未修改
400:错误请求
401:未授权
403:禁止
404:未找打
405:方法未允许,比如get方法,你用post请求
500:内部服务器错误
503:服务不可用