zoukankan      html  css  js  c++  java
  • 那些代表性的HTTP状态码,你还只知道404吗?快来看看吧【转】

    前言

    在网络上发送请求后,经常会根据请求的状态码去判断请求的成功失败与否,常见的状态码有200,404,500。

    不过你以为HTTP请求的状态码就只有这么几个么?其实是远远比这个多的。

    今天这篇文章我们就一起来看看HTTP请求中常用的状态码吧。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    HTTP状态码

    2XX-请求成功

    以2开头的2XX类的状态码,都表示请求成功,服务器正确执行了请求的操作。例如POST请求,在请求体中发送的数据会被服务器端正确的处理,例如写数据库操作。

    在2XX类的状态码中,最常见的就是200了,至少在我目前是没有见过请求成功后,状态码不是200的。因此我们只需要知道200的状态码表示的含义即可。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码200

    3XX-重定向

    以3开头的3XX类的状态码,都表示请求重定向,服务器端会返回信息告知浏览器如何做后续操作才能成功处理请求。

    接下来我们看看有哪些需要掌握的3XX状态码。

    • 301-永久重定向

    301状态码表示的是资源永久重定向,比如请求资源A的URI-A1,但是服务器端返回301,并指定了一个新的URI-A2,这就表示以后请求资源A,就只能用URI-A2了。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码301

    • 302-临时重定向

    302状态码表示的是资源的临时重定向,比如请求资源A的URI-A1,但是服务器端返回301,并指定了一个新的URI-A2,这时资源的位置临时用URI-A2表示,以后有可能还会进行更改,因此这个URI-A2并不是永久的。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码302

    • 303-请求其他资源

    303状态码表示在服务端找到你需要的资源,但是这个资源存在另一个URI,而且希望客户端在后续的请求中使用GET方法去请求返回的新URI。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码303

    4XX-客户端错误

    以4开头的4XX类的状态码,都表示是客户端的错误。

    • 401-未认证

    401表示服务端需要客户端提供一些认证信息,如果认证不通过,将无法向服务器端发送请求。这种情况尤其会出现在浏览器首次发送请求时,服务器端需要客户端的认证信息,最直观的信息是会在浏览器上弹出一个输入框,需要用户填写认证信息。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码401

    • 403-被拒绝

    403表示服务器端拒绝接受客户端发送过来的请求,而且一般不会给出提示原因,为何给予拒绝。

    不过一般会是因为用户无权限访问造成的。在我工作过程中,经常会遇到403的问题,因为我们对接口的权限管理很严格,如果新增的接口没有正确配置权限,就会造成403的问题。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码403

    • 404-资源不存在

    404可能是所有程序员最熟悉的状态码了吧,无需过多描述,就是请求的资源在服务器端不存在,一般为请求的URL不对。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码404

    • 405-不允许使用该方法

    405表示的是请求的URL虽然能被服务器识别,但是不允许使用该方法。

    需要注意的是:GET和HEAD方法,服务器端总是会允许执行的。

    出现405状态码的常见原因是,当服务端定义的请求类型与客户端发送的类型不一致,比如服务器端定义的方法为POST,而客户端发送请求类型是GET。

    5XX服务器端错误

    以5开头的5XX型状态码都表示服务器端错误。

    • 500-服务器内部错误

    500状态码表示的是服务器内部执行异常,一般都表现为程序上的bug,例如代码在执行过程中抛出异常,例如常见的空指针。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码500

    • 502-错误网关

    502状态码一般会展现bad gateway错误网关类型的信息。

    主要是由于客户端向服务器端请求超时,比如在服务器端网络状况不好的情况下,同时又有多个客户端向服务器端发送请求,会造成服务器端资源不够,无法正常响应,便会返回这个结果。

    一般最简单的解决方就是刷新的方式,有很多由于有缓存的情况,直接从本地拿数据,就不会再报502错误。

    • 503-服务不可用

    503状态码表示服务器无法处理请求,一般表现为服务器宕机或者处于超负荷状态。不过这一般都是暂时性的情况,在服务重启或者负载均衡处理后,服务会继续处于可用状态。

    那些代表性的HTTP状态码,你还只知道404吗?快来看看吧

    状态码503

    • 504-网关超时

    504状态码一般网关在转发过程中,超过设定的时间仍未收到上游服务器的响应。

    结束语

    今天这篇文章主要介绍了一些常用的HTTP状态码,这些状态码会经常用于判断服务的可用性上,也很方便的适用于前后端联调时出错的判断,大家要好好掌握~

    转自

    https://www.toutiao.com/i6496464659028115981/

  • 相关阅读:
    太湖杯WriteUp
    第九届网安竞赛writeup
    湖湘杯2020 writeup
    利用DNS缓存和TLS协议将受限SSRF变为通用SSRF
    十月学习计划
    2020GACTF部分wp
    2020 天翼杯 部分wp
    DASCTF 安恒七月赛wp
    开发步骤
    垃圾收集器与内存分配策略
  • 原文地址:https://www.cnblogs.com/paul8339/p/8024028.html
Copyright © 2011-2022 走看看