轻松记住http状态码的类型

134 阅读3分钟

前端面试八股文http状态码。

首先,状态码常见的有很多种,大致分为五类。

image.png

1XX(请求正在处理)

1XX:代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。

二、2XX(请求成功处理)

2XX:代表成功处理了请求的状态代码。常见的有:

200:(成功) 服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。

201:(已创建) 请求已经被实现,而且有一个新的资源已经依据请求的需要而建立,且其 URI 已经随Location 头信息返回。假如需要的资源无法及时建立的话,应当返回 '202'。

202:(已接受) 服务器已接受请求,但尚未处理。正如它可能被拒绝一样,最终该请求可能会也可能不会被执行。在异步操作的场合下,没有比发送这个状态码更方便的做法了。

三、3XX(表示重定向)

3XX:代表要完成请求,需要进一步操作。通常,这些状态代码用来重定向。

301:(永久移动) 请求的网页已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。

302:(临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。

四、4XX(表示请求错误)

401:(未授权):当前请求需要用户验证。对于需要登录的网页,服务器可能返回此响应。

403:(禁止):服务器已经理解请求,但是拒绝执行它。与401响应不同的是,身份验证并不能提供任何帮助,而且这个请求也不应该被重复提交。

404:(未找到):请求失败,请求所希望得到的资源未被在服务器上发现。

五、5XX(表示服务器错误)

5XX:表示服务器在尝试处理请求时发生内部错误。这些错误可能是服务器本身的错误,而不是请求出错。

500:(服务器内部错误):服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器端的源代码出现错误时出现。

501:(尚未实施):服务器不支持当前请求所需要的某个功能。当服务器无法识别请求的方法,并且无法支持其对任何资源的请求。

502:(错误网关):作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

总的来说就是

1xxx(请求发起开始) - 2xxx(请求开始响应) - 3xxx(请求出现了重定向) - 4XXX(请求的方式出现问题)- 5xx(所请求的服务器出现了问题)