Charles模拟网络请求返回状态

article/2025/9/21 18:40:36

一、Http请求返回状态码

1、2XX——成功请求

返回信息为2开头的状态码时,所代表的意思是:

状态码描述
200 OK请求成功
201 Created请求被创建完成,同时新的资源被创建
202 Accepted服务器已接受请求,但尚未处理

203 No-Authoritative Information

服务器已成功处理了请求,但返回的实体头部元信息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。
204 No Content服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。
205 Reset Content服务器成功处理了请求,且没有返回任何内容。
206 Partial Content服务器已经成功处理了部分 GET 请求。
207 Multi-Status由WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是一个XML消息,并且可能依照之前子请求数量的不同,包含一系列独立的响应代码。

2、3XX——重定向请求

返回信息为3开头的状态码时,所代表的意思是:

状态码描述
300 Multiple Choices被请求的资源有一系列可供选择的回馈信息,每个都有自己特定的地址和浏览器驱动的商议信息。
301 Moved Permanently被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个 URI 之一。
302 Move Temporarily请求的资源临时从不同的 URI响应请求。
303 See Other对应当前请求的响应可以在另一个 URL 上被找到,而且客户端应当采用 GET 的方式访问那个资源。
304 Not Modified如果客户端发送了一个带条件的 GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个状态码。
305 Use Proxy被请求的资源必须通过指定的代理才能被访问。
306 Switch Proxy在最新版的规范中,306状态码已经不再被使用。
307 Temporary Redirect请求的资源临时从不同的URI 响应请求。

3、4XX——错误请求

返回信息为4开头的状态码时,所代表的意思是:

状态码描述
400 Bad Request1、语义有误,当前请求无法被服务器理解。
2、请求参数有误。
401 Unauthorized当前请求需要用户验证。
402 Payment Required为了将来可能的需求而预留的。
403 Forbidden服务器已经理解请求,但是拒绝执行它。
404 Not Found请求失败,请求所希望得到的资源未被在服务器上发现。
405 Method Not Allowed请求行中指定的请求方法不能被用于请求相应的资源。
406 Not Acceptable请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体。
407 Proxy Authentication Required与401响应类似,只不过客户端必须在代理服务器上进行身份验证。
408 Request Timeout请求超时。
409 Conflict由于和被请求的资源的当前状态之间存在冲突,请求无法完成。
410 Gone被请求的资源在服务器上已经不再可用,而且没有任何已知的转发地址。
411 Length Required服务器拒绝在没有定义 Content-Length 头的情况下接受请求。
412 Precondition Failed服务器在验证在请求的头字段中给出先决条件时,没能满足其中的一个或多个。
413 Request Entity Too Large服务器拒绝处理当前请求,因为该请求提交的实体数据大小超过了服务器愿意或者能够处理的范围。
414 Request-URI Too Long请求的URI 长度超过了服务器能够解释的长度,因此服务器拒绝对该请求提供服务。
415 Unsupported Media Type对于当前请求的方法和所请求的资源,请求中提交的实体并不是服务器中所支持的格式,因此请求被拒绝。
416 Requested Range Not Satisfiable如果请求中包含了 Range 请求头,并且 Range 中指定的任何数据范围都与当前资源的可用范围不重合,同时请求中又没有定义 If-Range 请求头,那么服务器就应当返回416状态码。
417 Expectation Failed在请求头 Expect 中指定的预期内容无法被服务器满足,或者这个服务器是一个代理服务器,它有明显的证据证明在当前路由的下一个节点上,Expect 的内容无法被满足。
418 I'm a teapot暂不知
421Misdirected Request请求被指向到无法生成响应的服务器(比如由于连接重复使用)
422 Unprocessable Entity请求格式正确,但是由于含有语义错误,无法响应。
423 Locked当前资源被锁定。
424 Failed Dependency由于之前的某个请求发生的错误,导致当前请求失败
425 Too Early服务器不愿意冒风险来处理该请求,原因是处理该请求可能会被“重放”,从而造成潜在的重放攻击。
426 Upgrade Required客户端应当切换到TLS/1.0。
449 Retry With由微软扩展,代表请求应当在执行完适当的操作后进行重试。
451 Unavailable For Legal Reasons该请求因法律原因不可用。

4、5XX——服务器错误

返回信息为5开头的状态码时,所代表的意思是:

状态码描述
500 Internal Server Error服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。
501 Not Implemented服务器不支持当前请求所需要的某个功能。
502 Bad Gateway作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应
503 Service Unavailable由于临时的服务器维护或者过载,服务器当前无法处理请求。
504 Gateway Timeout作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应。
505 HTTP Version Not Supported服务器不支持,或者拒绝支持在请求中使用的 HTTP 版本。
506 Variant Also Negotiates服务器存在内部配置错误:被请求的协商变元资源被配置为在透明内容协商中使用自己,因此在一个协商处理中不是一个合适的重点。
507 Insufficient Storage服务器无法存储完成请求所必须的内容。
509 Bandwidth Limit Exceeded服务器达到带宽限制。
510 Not Extended获取资源所需要的策略并没有被满足。

二、利用Charles与Mocky模拟常见的请求返回状态

1、Mocky:real HTTP mocking 

首先我们先对请求返回状态码进行确定,即项目需要模拟那些返回状态,这就用到了这个网站:https://www.mocky.io/

这个网站可以对我们的接口返回状态进行mock,以下为大家介绍如何去利用该网站。

配置完成后,点击“Generate my HTTP Response(生成我的http返回请求)” 会生成如图连接

2、Charles:配置实现状态码模拟

以下我们以百度进行举例:https://www.baidu.com

(1)右键点击该请求,选择“Map Remote Setting”,弹出“Edit Mapping”弹框进行配置。

配置完成后,点击“OK”,网页中www.baidu.com重新发起,就会模拟成功了

(2)刚刚配置是先进行抓取,然后对模拟请求进行配置,当然我们也可以直接进行配置。点击“Tools”,再选择“Map Remote Setting”

 出现“Map Remote Setting”弹框,选择“Add”进行请求添加,点击“OK”。如图:

 

配置成功后,重新刷新百度界面,会展现同样的效果。

 

Charles还有很多用途,要一点点进行发掘,每当我学到新的功能,都会再该模块进行分享并记录,方便自己同时也方便他人。 

 

 


http://chatgpt.dhexx.cn/article/MctG8uom.shtml

相关文章

请求状态码(Http常见状态码总结)

1XX (信息性状态码)接收的请求正在处理 201-206(成功状态码)服务器成功处理了请求,说明网页可以正常访问。 300-307(重定向状态码)要完成请求,需要进一步进行操作。通常&#xff0c…

HTTP请求格式、状态码及常用请求方法

常用的HTTP请求方法,按照RFC2616标准(HTTP1.1)来看,通常有以下8种方法:get、post、put、delete、head、trace、connect、options。 HTTP请求格式 当浏览器向Web服务器发出请求时,它向服务器传递了一个数据…

在使用win 7 无线承载网络时,启动该服务时,有时会提示:组或资源的状态不是执行请求操作的正确状态。 网上有文章指出,解决这个问题的方法是在设备管理器中启动“Microsoft托管网络虚拟适配

在使用win 7 无线承载网络时,启动该服务时,有时会提示:组或资源的状态不是执行请求操作的正确状态。 网上有文章指出,解决这个问题的方法是在设备管理器中启动“Microsoft托管网络虚拟适配器”,见 http://jingyan.baid…

无法启动承载网络。 组或资源的状态不是执行请求操作的正确状态,解决办法。(转)...

摘自:http://www.lihuoqing.cn/other/172.html 以前用的好好的,这段时间就出现以下情况: C:\windows\system32>netsh wlan start hostednetwork 无法启动承载网络。 组或资源的状态不是执行请求操作的正确状态。 问题截图为以下图片的第一个红色框&am…

win10 更新之后,无法开启wifi,“组或资源的状态不是执行请求操作的正确状态”...

netsh wlan set hostednetwork modeallow ssidwifi_Tr key00147258 netsh wlan start hostednetwork 请参考最新博客:http://www.cnblogs.com/tanrong/p/8184325.html 已尝试解决办法: 1. http://jingyan.baidu.com/article/af9f5a2d2ad52943150a457f.h…

无线承载网络 组或资源的状态不是执行请求操作的正确状态 解决方法

在使用win 7 无线承载网络时,启动该服务时,有时会提示:组或资源的状态不是执行请求操作的正确状态。 网上有文章指出,解决这个问题的方法是在设备管理器中启动“Microsoft托管网络虚拟适配器”,见 http://jingyan.baidu.com/article/3a2f7c2e4f9a6326afd61132.html 经过实…

cmd中执行netsh wlan start hostednetwork 无法启动承载网络。 组或资源的状态不是执行请求操作的正确状态。

cmd中执行netsh wlan start hostednetwork 无法启动承载网络。 组或资源的状态不是执行请求操作的正确状态。 解决办法: 1、打开网络共享中心,点击“更改适配器”,如果没有看到“无线网络连接2”的网络连接,请尝试以下步骤&#…

JavaIO:使用封装好的工具类CommonsIO

1.首先需要在Apache的官网上下载工具类的jar 包 2.导入jar包:打开文件——项目结构——依赖 3.CommonsIO核心操作:FileUtils类 1.得到文件的大小: long len FileUtils.sizeOf(new File("sc.png")); 2.列出目录下所有文件&#…

java递归获取文件树目录列表

直接上代码: public static List<FileTreeNode> getFileTree(File file) {List<FileTreeNode> baseTreeNodes new ArrayList<>();File[] childFiles file.listFiles();if (childFiles ! null) {for (File listFile : childFiles) {FileTreeNode baseTreeN…

FileFilter过滤器的使用方法

过滤器原理 public static void main(String[] args) {File f1 new File("D:\\FA\\JAVAspace\\FightingLangOwner\\Demo\\src\\DemoFile");getFileName(f1);}public static void getFileName(File f1){File[] arrFile f1.listFiles(new FileFilterImp());for (Fil…

Java8实战笔记:第一部分(1~3章)

1.为什么关心Java8 和大多数书本一样&#xff0c;书本的第一章都起统领全书的作用&#xff0c;上来就是一个疑问&#xff1f;Java8怎么还在变&#xff0c;语言的变化离不开程序员对性能和代码简化的需求&#xff0c;进而引出了流处理、Lambda表达式、方法引用、并行化的相关概…

java 遍历目录下所有文件_java实现遍历某个目录(包括子目录)下的所有文件

在java中遍历一个文件夹里边的所有文件,可以有两种方式: 一、递归遍历 通常也是开发者第一时间能想到的方法。 递归遍历的优点是: 实现起来相对简单,代码量相对较少,执行效率较高。 缺点是: 比较吃内存,对硬件要求较高。 在线视频教程分享:java在线视频 具体算法如下:…

java解压缩gzip_利用Java实现压缩与解压缩(zip、gzip)支持中文路径

zip扮演着归档和压缩两个角色&#xff1b;gzip并不将文件归档&#xff0c;仅只是对单个文件进行压缩&#xff0c;所以&#xff0c;在UNIX平台上&#xff0c;命令tar通常用来创建一个档案文件&#xff0c;然后命令gzip来将档案文件压缩。 Java I/O类库还收录了一些能读写压缩格式…

ubuntu-20.04 Astra-pro configuration

In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘Agent::queryLocalData(std::string&, ResponseDataT&)’ at ./Agent/Agent.cc:715:14: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:34: error: ‘char* __builtin_s…

Java中获取本地某一个目录下的所有文件和文件夹

在从事web开发工作中&#xff0c;经常需要对本地某一个目录下的文件进行处理&#xff0c;而在这之前&#xff0c;我们需要做的就是获取到这个目录下的文件。 1 String filepath "D:\file";//D盘下的file文件夹的目录 2 File file new File(filepath);//File类型可以…

企业微信和个人微信的区别

从 个人身份、朋友圈、加好友、社群管理、数据统计&#xff0c;这5个方面来进行对比&#xff1a; 一、 个人身份 企业微信和个人微信有一个很大的区别&#xff0c;就是企业品牌的展示。 企业微信自带一个品牌的小尾巴&#xff0c;当用户初次添加你时&#xff0c;企微自带的品牌…

企业微信or个人微信?三个角度让你不再纠结

如今承载了12亿用户的企业微信已经与微信环境做到高度的融合互通&#xff0c;如实现了互相添加好友等功能&#xff0c;可以看出腾讯推动企业微信扩大商用场景的决心。回想2020年5月某社群工具被封杀后&#xff0c;微信社群运营就一夜回到解放前人工成本高企的状态&#xff0c;那…

安卓移动开发初步——微信页面制作

进行APP门户制作时选择在Android studio中建立简单的微信页面&#xff0c;内容包括&#xff1a; ①页面布局与微信页面基本相似&#xff1b; ②点击图标能实现页面的切换&#xff1b; ③点击图标时有选中效果(图标亮起)&#xff1b; 目录 效果图 底部布局实现 顶部布局实现…

微信小程序 java家庭个人收支理财记账本springboot

该系统主要分为登录注册、资金管理、统计报表、趋势图线、个人信息五大模块。 登录管理:新用户填写相关的注册信息&#xff0c;获得登陆账号和密码&#xff0c;已注册用户通过账号和密码登录系统。 资金管理:用户登录到系统后可以通过资金管理对家庭资金进行管理&#xff0c;包…

微信公众号基础入门知识

微信公众号的类型微信公众号一共有四种账号类型&#xff0c;除了我们日常接触的订阅号和服务号外&#xff0c;还包括企业微信和小程序。 订阅号 订阅号主要偏向于为用户传达资讯&#xff0c;其功能类似于报纸杂志&#xff0c;为读者传播消息&#xff0c;每天可以群发一次消息。…