首页 > 编程语言 >程序猿一生之敌——响应状态码

程序猿一生之敌——响应状态码

时间:2023-11-27 16:15:38浏览次数:32  
标签:状态 HTTP 请求 URI 之敌 响应 服务器 一生 客户端

   

HTTP 中常用的状态码(14种)

HTTP状态码负责表示客户端HTTP请求的返回结果、标记服务器的处理是否正常、通知出现的错误工作等。借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了错误。

 

通信流程

 

状态码如200 OK,由3位数字和原因短语组成。数字中的第一位指定了响应类别,后两位无分类。相应类别由以下五种:

状态码类别描述
1xx Informational(信息状态码) 接受请求正在处理
2xx Success(成功状态码) 请求正常处理完毕
3xx Redirection(重定向状态码) 需要附加操作已完成请求
4xx Client Error(客户端错误状态码) 服务器无法处理请求
5xx Server Error(服务器错误状态码) 服务器处理请求出错

HTTP的状态码总数达60余种,但是常用的大概只有14种。接下来,我们就介绍一下这些具有代表性的14个状态码。

  • 14种常用的HTTP状态码列表
状态码状态码英文名称中文描述
200 OK 请求成功。一般用于GET与POST请求
204 No Content 无内容。服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档
206 Partial Content 是对资源某一部分的请求,服务器成功处理了部分GET请求,响应报文中包含由Content-Range指定范围的实体内容。
 
301 Moved Permanently 永久性重定向。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替
302 Found 临时性重定向。与301类似。但资源只是临时被移动。客户端应继续使用原有URI
303 See Other 查看其它地址。与302类似。使用GET请求查看
304 Not Modified 未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源
307 Temporary Redirect 临时重定向。与302类似。使用GET请求重定向,会按照浏览器标准,不会从POST变成GET。
 
400 Bad Request 客户端请求报文中存在语法错误,服务器无法理解。浏览器会像200 OK一样对待该状态吗
401 Unauthorized 请求要求用户的身份认证,通过HTTP认证(BASIC认证,DIGEST认证)的认证信息,若之前已进行过一次请求,则表示用户认证失败
402 Payment Required 保留,将来使用
403 Forbidden 服务器理解请求客户端的请求,但是拒绝执行此请求
404 Not Found 服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面。也可以在服务器拒绝请求且不想说明理由时使用
 
500 Internal Server Error 服务器内部错误,无法完成请求,也可能是web应用存在bug或某些临时故障
501 Not Implemented 服务器不支持请求的功能,无法完成请求
503 Service Unavailable 由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中
  • 不常用的HTTP状态码列表
状态码状态码英文名称中文描述
201 Created 已创建。成功请求并创建了新的资源
202 Accepted 已接受。已经接受请求,但未处理完成
203 Non-Authoritative Information 非授权信息。请求成功。但返回的meta信息不在原始的服务器,而是一个副本
205 Reset Content 重置内容。服务器处理成功,用户终端(例如:浏览器)应重置文档视图。可通过此返回码清除浏览器的表单域
300 Multiple Choices 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择
305 Use Proxy 使用代理。所请求的资源必须通过代理访问
306 Unused 已经被废弃的HTTP状态码
402 Payment Required 保留,将来使用
405 Method Not Allowed 客户端请求中的方法被禁止
406 Not Acceptable 服务器无法根据客户端请求的内容特性完成请求
407 Proxy Authentication Required 请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权
408 Request Time-out 服务器等待客户端发送的请求时间过长,超时
409 Conflict 服务器完成客户端的PUT请求是可能返回此代码,服务器处理请求时发生了冲突
410 Gone 客户端请求的资源已经不存在。410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置
411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息
412 Precondition Failed 客户端请求信息的先决条件错误
413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息
414 Request-URI Too Large 请求的URI过长(URI通常为网址),服务器无法处理
415 Unsupported Media Type 服务器无法处理请求附带的媒体格式
416 Requested range not satisfiable 客户端请求的范围无效
417 Expectation Failed 服务器无法满足Expect的请求头信息
501 Not Implemented 服务器不支持请求的功能,无法完成请求
502 Bad Gateway 充当网关或代理的服务器,从远端服务器接收到了一个无效的请求
504 Gateway Time-out 充当网关或代理的服务器,未及时从远端服务器获取请求
505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理



 



标签:状态,HTTP,请求,URI,之敌,响应,服务器,一生,客户端
From: https://www.cnblogs.com/shiyitongyue/p/17859582.html

相关文章

  • socket.on可以直接添加自定义事件吗,理解socket的事件触发与响应
    在Web开发中,socket.on通常是用于注册处理特定事件的回调函数的方法。它主要用于处理Socket.IO库中的预定义事件,例如"connect"、"disconnect"、"message"等。然而,Socket.IO也允许你添加自定义事件,以便在客户端和服务器之间进行自定义的双向通信。要使用socket.on来处理自定义事件,......
  • 简单的应急响应练习
    利用Windowsserver2003简单搭建一个存在木马的靶机,供同学们接触了解应急响应的基础技巧场景如下:存在一台web服务器,已被入侵,如何去排查解决此次安全事件 首先根据通常经验,会查一下服务器外联情况,通过netstat-ano查看,发现PID2332存在不正常的外部链接通过PID定位到具体......
  • HTTP请求响应码详解 1XX/2XX/3XX/4XX/5XX
      转载自:https://blog.csdn.net/qq_43565087/article/details/124696787......
  • 【Quarkus】使用Buffer直接操作响应流
    importio.vertx.core.buffer.Buffer;importio.vertx.core.buffer.impl.BufferImpl;importio.vertx.core.http.HttpHeaders;importio.vertx.core.http.HttpServerResponse;importio.vertx.ext.web.RoutingContext;importjakarta.ws.rs.Consumes;importjakarta.ws.......
  • 深入理解Python爬虫中的HTTP请求与响应过程
    在Python爬虫开发中,了解HTTP请求与响应的过程是非常重要的。HTTP(HypertextTransferProtocol)是一种用于传输超文本的应用层协议,通过HTTP协议,我们可以在网络上获取各种资源。本文将深入探讨Python爬虫中的HTTP请求与响应过程,帮助您更好地理解和应用Python爬虫技术。1.了解HTTP协议H......
  • FTP客户端提示「响应: 530 Valid hostname is expected.」可尝试的解决方案
    响应:  530Validhostnameisexpected.该响应的意思是“需要有效的主机名”,通常在FTP登录时出现。这个响应表示FTP服务器要求客户端提供一个有效的主机名,以便服务器能够识别它。如果出现该响应,可能是因为输入的主机名错误或服务器无法识别它。解决方案用户名前加「......
  • 使用Python协程并发测试cdn响应速度
    代码干净清爽才能看着赏心悦目:#!/usr/bin/envpython3.11importtimefromcontextlibimportcontextmanagerfromenumimportStrEnumimportanyioimporthttpx@contextmanagerdeftimeit(msg:str):start=time.time()yieldcost=time.time()-sta......
  • dns推荐(提升网络响应速度)
    1.阿里云ipv4233.5.5.5、233.6.6.6IPv6:2400:3200::1和2400:3200:baba::1腾讯云Ipv4119.29.29.29ipv62402:4e00::......
  • Vue公共loading升级版(处理并发异步差时响应)
    公共loading是项目系统中很常见的场景,处理方式也不外乎三个步骤:1.通过全局状态管理定义状态值(vuex、pinia等)。2.在程序主入口监听状态值变化,从而展示/隐藏laoding动画。3.在请求和相应拦截器中变更状态值。第一二步骤处理大同小异,但在第三步中,网上很多博文分享的方法是:在请求......
  • 05.请求与响应 处理响应信息
    请求与响应-处理响应信息针对于后端服务,需要针对请求返回对应的响应信息。响应信息可以响应很多类型的信息类型。常见的比如文本类型,还有非常通用的JSON数据。在Flask中,可以使用视图函数来处理接口请求并生成相应的响应。而且Flask提供了多种方式来构建和返回接口响应......