首页 > 其他分享 >前端 | 说说 HTTP 常见的状态码有哪些,适用场景

前端 | 说说 HTTP 常见的状态码有哪些,适用场景

时间:2023-10-02 17:01:16浏览次数:35  
标签:状态 场景 HTTP 请求 码有 响应 请求者 服务器 客户端

前端 | 说说 HTTP 常见的状态码有哪些,适用场景?

基本描述

HTTP状态码(英语:HTTP Status Code),用以表示网页服务器超文本传输协议响应状态的3位数字代码

它由 RFC 2616规范定义的,并得到 RFC 2518RFC 2817RFC 2295RFC 2774RFC 4918等规范扩展

简单来讲,http状态码的作用是服务器告诉客户端当前请求响应的状态,通过状态码就能判断和分析服务器的运行状态

使用分析

状态码第一位数字决定了不同的响应状态,有如下: 1 表示消息 2 表示成功 3 表示重定向 4 表示请求错误 5 表示服务器错误

1xx

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

常见的有:

  • 100(客户端继续发送请求,这是临时响应):这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应

  • 101:服务器根据客户端的请求切换协议,主要用于websocket或http2升级

2xx

代表请求已成功被服务器接收、理解、并接受

常见的有:

  • 200(成功):请求已成功,请求所希望的响应头或数据体将随此响应返回

  • 201(已创建):请求成功并且服务器创建了新的资源

  • 202(已创建):服务器已经接收请求,但尚未处理

  • 203(非授权信息):服务器已成功处理请求,但返回的信息可能来自另一来源

  • 204(无内容):服务器成功处理请求,但没有返回任何内容

  • 205(重置内容):服务器成功处理请求,但没有返回任何内容

  • 206(部分内容):服务器成功处理了部分请求

3xx

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

常见的有:

  • 300(多种选择):针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择

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

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

  • 303(查看其他位置):请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码

  • 305 (使用代理): 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理

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

4xx

代表了客户端看起来可能发生了错误,妨碍了服务器的处理

常见的有:

  • 400(错误请求): 服务器不理解请求的语法
  • 401(未授权): 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
  • 403(禁止): 服务器拒绝请求
  • 404(未找到): 服务器找不到请求的网页
  • 405(方法禁用): 禁用请求中指定的方法
  • 406(不接受): 无法使用请求的内容特性响应请求的网页
  • 407(需要代理授权): 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理
  • 408(请求超时): 服务器等候请求时发生超时

5xx

表示服务器无法完成明显有效的请求。这类状态码代表了服务器在处理请求的过程中有错误或者异常状态发生

常见的有:

  • 500(服务器内部错误):服务器遇到错误,无法完成请求
  • 501(尚未实施):服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码
  • 502(错误网关): 服务器作为网关或代理,从上游服务器收到无效响应
  • 503(服务不可用): 服务器目前无法使用(由于超载或停机维护)
  • 504(网关超时): 服务器作为网关或代理,但是没有及时从上游服务器收到请求
  • 505(HTTP 版本不受支持): 服务器不支持请求中所用的 HTTP 协议版本

举例说明

下面给出一些状态码的适用场景:

  • 100:客户端在发送POST数据给服务器前,征询服务器情况,看服务器是否处理POST的数据,如果不处理,客户端则不上传POST数据,如果处理,则POST上传数据。常用于POST大数据传输

  • 206:一般用来做断点续传,或者是视频文件等大文件的加载

  • 301:永久重定向会缓存。新域名替换旧域名,旧的域名不再使用时,用户访问旧域名时用301就重定向到新的域名

  • 302:临时重定向不会缓存,常用 于未登陆的用户访问用户中心重定向到登录页面

  • 304:协商缓存,告诉客户端有缓存,直接使用缓存中的数据,返回页面的只有头部信息,是没有内容部分

  • 400:参数有误,请求无法被服务器识别

  • 403:告诉客户端进制访问该站点或者资源,如在外网环境下,然后访问只有内网IP才能访问的时候则返回

  • 404:服务器找不到资源时,或者服务器拒绝请求又不想说明理由时

  • 503:服务器停机维护时,主动用503响应请求或 nginx 设置限速,超过限速,会返回503

  • 504:网关超时

参考文献

标签:状态,场景,HTTP,请求,码有,响应,请求者,服务器,客户端
From: https://blog.51cto.com/appleex/7683805

相关文章

  • 一文搞懂HTTP跟HTTPS的区别
    ​前言当我们在网上冲浪浏览网页时,有时候会注意到一些网址的前缀是HTTPS://,而另一些则是HTTP://。那么这两种网址前缀之间有何差异呢?在我们探讨这一问题前,我们首先要了解HTTP和HTTPS的定义。什么是HTTPHTTP(HyperTextTransferProtocol:超文本传输协议),是一个应用层的协议,它基......
  • 迷失岛2笔记3 场景数据保存
     首先我们注册一下这个场景前后数据变化的事件 然后在我们切换场景这里做一个场景前场景后的一个数据切换 事件调用 然后再里面写逻辑   可以看到上面的字典他是一个枚举和一个Bool 就是用这个来判断哪些物品是否要激活使用过   他就是查找当前场......
  • 【中秋国庆不断更】OpenHarmony多态样式stateStyles使用场景
    @Styles和@Extend仅仅应用于静态页面的样式复用,stateStyles可以依据组件的内部状态的不同,快速设置不同样式。这就是我们本章要介绍的内容stateStyles(又称为:多态样式)。概述stateStyles是属性方法,可以根据UI内部状态来设置样式,类似于css伪类,但语法不同。ArkUI提供以下四种状态:​......
  • 【中秋国庆不断更】OpenHarmony多态样式stateStyles使用场景
    @Styles和@Extend仅仅应用于静态页面的样式复用,stateStyles可以依据组件的内部状态的不同,快速设置不同样式。这就是我们本章要介绍的内容stateStyles(又称为:多态样式)。概述stateStyles是属性方法,可以根据UI内部状态来设置样式,类似于css伪类,但语法不同。ArkUI提供以下四种状态:......
  • 【中秋国庆不断更】OpenHarmony多态样式stateStyles使用场景
    @Styles和@Extend仅仅应用于静态页面的样式复用,stateStyles可以依据组件的内部状态的不同,快速设置不同样式。这就是我们本章要介绍的内容stateStyles(又称为:多态样式)。概述stateStyles是属性方法,可以根据UI内部状态来设置样式,类似于css伪类,但语法不同。ArkUI提供以下四种状态:​......
  • C++ STL标准容器的特点和典型的使用场景
    概念和作用C++标准模板库(StandardTemplateLibrary,STL)提供了一组通用的模板类和函数,用于处理常见的数据结构和算法。STL中的标准容器是其中的重要组成部分,它们提供了不同的数据结构和操作方式,适用于各种不同的使用场景。说白了,就是每一种容器代表一种特定的数据结构。我们在学C......
  • 安防视频监控/视频融合平台EasyCVR可完成的多场景应用
    TSINGSEE青犀视频人员/区域入侵功能通过AI算法后台的实时监测和告警系统,对重要区域进行全天候的监控和管控。一旦监测到有人员靠近、闯入等异常情况,即刻发出告警通知管理人员,从被动的监督转变为主动的监控,实现事前预警、事中检测、事后规范处理,极大提升了监控区域的管控效率。 ......
  • Go每日一库之154:eCapture(无需CA证书抓包https)
    eCapture介绍eCapture是一款基于eBPF技术实现的用户态数据捕获工具。不需要CA证书,即可捕获https/tls的通讯明文。项目在2022年3月中旬创建,一经发布,广受大家喜爱,至今不到两周已经1200多个Star。作用不需要CA证书,即可捕获HTTPS/TLS通信数据的明文。在bash审计场景,可以捕获ba......
  • 分析视频监控/视频汇聚平台EasyCVR分析网关车辆检测/车牌识别算法及应用场景
    在数字化时代,由于大众对出行要求的提升,汽车数量不断增加,给城市和交通管理带来了很多挑战。为了应对这些问题,旭帆科技开发了一套AI智能车辆检测与车牌识别算法,为交通管理和车辆安全提供高效的解决方案。AI车辆检测和车牌识别算法集成了多种技术,如光学字符识别(OCR)和云计算等,能够从......
  • Android中OkHttp源码阅读二(责任链模式)
    AndroidOkHttp源码阅读详解一看OkHttp源码,发现OkHttp里面使用了责任链设计模式,所以才要学习责任链设计模式小节2最终会返回ResponseResponsegetResponseWithInterceptorChain()throwsIOException{//Buildafullstackofinterceptors.List<Interceptor>inte......