大家好,我是阿萨。通过昨天的学习,我们了解了HTTP 协议,IP协议,TCP 协议以及DNS 如何协同工作的。今天我们学习HTTP状态码。
一 , 什么是HTTP状态码?
HTTP状态码是用来表示HTTP请求的返回结果,暴击服务器的处理是否正常,通知错误的。从这里大家应该可以看出来,状态码就是告诉你服务器处理结果的。
二, 状态码类别
常见状态码有以下几种:
- 1XX ------信息类的状态码, 表示接受的请求正在处理。
- 2XX ------ 成功状态码, 表示请求正常处理。
- 3XX ------重定向状态码,表示需要进行附加操作以完成请求。
- 4XX ------客户端错误状态码,服务器无法处理请求
- 5XX ------服务器错误状态码,服务器处理请求出错。
接下来我们学习下常见的14 种状态码:
- 200 OK表示服务器正常处理了客户端请求。
- 204 No Content表示服务器正常处理了客户单请求,但是返回的响应报文里没有实体数据。
- 206 Partial Content客户端发送了范围请求,服务器成功执行了这部分请求,报文中包含Content-Range 指定范围的实体内容。
- 301 Moved Permanently 永久性重定向表示请求的资源被分配了新的URI,以后使用新URI。
- 302 Found 临时性重定向。表示请求的资源被分配了新的URI,希望使用新的URI 访问。
- 303 See Other请求对应的资源存在这另一个URI,应使用 GET 方法定向获取请求的资源。
- 304 Not Modified客户端发送附带条件的请求时,服务器允许访问,但因为条件不满足,直接返回304.
- 307 Temporary Redirect临时重定向 和302 类似。302 会讲POST 变成GET。307 不会把POST 变成GET。
- 400 Bad Request表示请求报文中存在语法错误。
- 401 Unauthorized表示请求需要HTTP 认证,但是目前没有认证,或者是认证过期或者失效
- 403 Forbidden表示请求资源被服务器拒绝
- 404 Not Found服务器无相应资源。
- 500 Internal Server Error服务器执行请求时发生错误。
- 503 Service UUnavailable服务器暂时超负载或者进行停机维修。
状态码和实际状况不一致的情况经常发生,比如请求后台资源404 了,页面就显示404 界面,但是状态码还是200. 这个就不合理,大家日常测试时多关注。
你学会了吗?
如果觉得阿萨的内容对你有帮助,欢迎围观点赞。