通过抓包软件Charles和Fiddle快速模拟(Mock)数据

使用Charles实现本地数据mock

由于在实际开发中,一般进行前后端分离,通过接口来进行数据交互。所以我们使用charles-proxy来进行模拟数据接口。Charles能够抓取浏览器发起的请求,然后做出一些处理和返回。官网下载
配置参考

注册账号(不注册的话,30天会过期,每隔一段时间会关闭一次) 账号:https://zhile.io 密码:48891cf209c6d32bf4

配置接口文件

在本地创建接口文件返回的json文件,通过charles配置访问地址返回对应的json文件

设置charles

菜单Tools -> Map Local. 勾选Enable Map Local,点击Add按钮新增一个接口,选择对应返回的json文件

Protocol: http
Host: localhost.charlesproxy.com
Port: 3000
Path: /api/todolist // 根据不同的地址返回对应的数据
Query: // 参数

注意:Host选项如果只写 localhost,会出现浏览器访问时出现404,经过查看发现charles能抓取线上的包,但是不能抓取本地的包,那么把我们想要访问的接口挂到 localhost.charlesproxy.com:3000域名下,就能访问了。官方说明

修改hosts文件对127.0.0.1 进行映射,host文件在c:\windows\system32\drivers\etc 下。快速进入hosts文件夹的方法。同时按下Win+R组合键,调出运行栏,输入 c:\windows\system32\drivers\etc 确定即可打开对应的文件夹。

发起请求,会遇到跨域问题

axios.get('http://localhost.charlesproxy.com:3000/api/todolist')
.then((res) => {
    console.log(res);
})
.catch((error) => {
    console.log(error);
})
// 在控制台中会提示一下错误:
// 虽然ajax访问接口能正常的获取到数据,并成功得到202,但是返回结果仍为error,查看以下错误Access to XMLHttpRequest at 'http://localhost.charlesproxy.com:3000/api/todolist' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.,发现出现跨域问题。 

Charles配置解决跨域

跨域资源共享 CORS 详解( 阮一峰)

解决方法:使用charles的rewrite修改options请求的response header

  • 点击Tools -> Rewrite
  • 添加rewrite配置
    1. 开启Enable Rewrite
    2. 点击左边add添加rewrite配置
    3. 设置名称,点击第一个模块中的add,添加location,什么不填写点击确定匹配所有
    4. 设置请求头:点击第二个模块中的add,添加Type:add header 和 response status

      修改Header下的四个字段:

      Access-Control-Allow-Origin: *

      Access-Control-Allow-Methods: GET,POST,OPTIONS

      Access-Control-Allow-Headers: Accept,Origin,X-Requested-With,Content-Type,Last-Modified

      Allow: GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, PATCH

      选择Type为Add Header, 勾选Response,设置Replace中的Name和Value,勾选Replace all。

      选择Type为Response Status,勾选Response,勾选Match whole value

Charles破解:

  • 从这个网站生成破解后的charles.jar文件
  • 替换本地charles.jar文件即可

    windows: c:\Program Files\Charles\lib

Fiddle快速模拟mock

  • 创建访问接口返回的json文件
  • 选中目标信息,点击autoresponde,勾选下面对应的3个复选框,点击Add Rule添加访问路径对应返回的数据。
  • Fiddle下载地址
// 编辑Rule Editor
// 设置请求地址
EXACT:http://localhost:3000/api/getTodoList
// 对应请求地址输出的数据
c:\Users\chinatime\Desktop\mock\data.json
// 点击保存即可

原文地址:https://www.cnblogs.com/yuxi2018/p/11247409.html

时间: 2024-07-30 05:31:54

通过抓包软件Charles和Fiddle快速模拟(Mock)数据的相关文章

手机抓包软件Charles安装使用实例 (流媒体播放测试可去下载的时刻检测)

手机抓包软件Charles安装使用实例 浏览:5258 发布日期:2015/07/17 分类:技术分享 关键字: 手机抓包软件 Charles 大胡子的博客Charles安装使用实例 Charles安装 手机抓包软件Charles 因为项目要用到,于是折腾了下,现在把自己做的笔记发出来,有兴趣的可以看看,避免大家走弯路 更多技术文章请访问: http://www.dahuizhi.com Charles上的设置要截取iPhone上的网络请求,我们首先需要将Charles的代理功能打开.在Char

如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据

http://www.jb51.net/os/windows/189090.html 今天给大家介绍一种如何在Windows操作系统上使用著名的抓包工具软件Wireshark来截获iPhone.iPad等iOS设备或Android设备的网络通讯数据的方法 不管是iPhone的iOS还是Android系统上开发的应用App基本上都会需要使用网络通讯来传输数据.开发者有的时候可能会需要通过抓包的方式来了解应用具体在传输些什么数据,以及数据是否正确.今天给大家介绍一种如何在Windows操作系统上使用

Mac用户抓包软件Charles 4.0 破解 以及 抓取Https链接设置

相信大家曾经都是Window的用户,作为前端哪能没有一款抓包工具,抓包工具可以非常便捷的帮助我们分析接口返回报文数据,快速定位问题. 曾经横扫window用户的Fiddler便是我们的挚爱,然而,作为前端开发者还是习惯用高大上的MAC进行开发,本次博客将给大家介绍MAC电脑如何安装抓包工具,以及如何设置HTTPS连接的抓取. 一.下载Charles 4.0 版本的软件. 链接: https://pan.baidu.com/s/1jI5j0O2 密码: u5r2 下载完成后,双击安装即可,直到安装

【抓包工具】fiddler4-移动端模拟返回数据

1.大家在做移动端功能测试的时候,经常会遇到返回的数据不是自己想要的,开发gg又很忙,不可能实时帮你造一批数据,那怎么办呢,没错,Fiddler基本可以帮你克服这一困难 2.首先操作Fiddler->Rules-Automatic Breakpoints->After Responses,选中After Responses 3.接下去使用手机连接代理,代理篇请见:http://www.cnblogs.com/wonderful0714/p/4586181.html 4.接下去打开APP进行请求

比Wireshark更轻量、更方便的抓包软件:Charles

转:http://blog.csdn.net/lixing333/article/details/42776187 之前写过一篇通过Wireshark进行抓包,分析网络连接的文章<通过WireShark抓取iOS联网数据实例分析>:http://blog.csdn.net/lixing333/article/details/7782539 最近一些工作需要抓包,在我的Mac上安装了Wireshark之后,发现运行不了.探究之,发现Wireshark的界面用的是X Window,所以需要在X11

mac端的优秀抓包工具——Charles使用

mac端的优秀抓包工具--Charles使用 一.简介 Charles是mac端的一款截取与分析网络请求的工具,在网络开发中使用其作分析,可以大大提高我们的开发效率.Charles是收费软件,一般可以试用三十天,但是可以通过相应的破解来获取服务(这里只做演示使用,希望大家购买正版软件).Charles软件和破解包下载地址:http://pan.baidu.com/s/1ySsUy. 二.安装与使用 下载好压缩包后,解压打开,将软件包拖入应用程序文件夹中,这时候一个原版的软件就可以让我们使用,只是

MAC下最好用的抓包工具charles简单操作教程,charles mac入门

Charles for Ma是 mac 平台上一款非常强大的抓包神器,可以让开发者监视查看所有连接互联网的 HTTP 通信,包括请求,响应和 HTTP 头信息等等,charles mac让您的 Internet 连接调试任务更加快速和轻松!今天小编给大家带来了charles简单操作教程,算是charles mac入门吧,感兴趣的可以来看看! 1.抓浏览器网页请求 其实浏览器的请求一般用浏览器的开发者工具就可以,当然charles也可以做到,使用方法呢,也很简单 将你链接的网络,配置网页代理,注意

C#版的抓包软件

C#版的抓包软件 [创建时间:2015-09-10 22:37:04] NetAnalyzer下载地址 不好意思啊,NetAnalyzer停更有点长了,今天继续填坑^&^ NetAnalyzer实现结构 在上一篇中介绍一点VC++开发环境的配置,与基本的运行方式.因为NetAnalyzer使用的C#作为开发语言,所以在此主要介绍一些在C#环境下的开发环境的配置,与一些基本开发情况,力求在完成本篇后后,读者可以制作一个简单的抓包程序. 在开始编程前先要介绍连个.Net类库SharpPcap.dll

抓包软件PowerSniff开发计划

目前抓包的工具不顺手: (1)smartsniff, minisniffer不支持插件 (2)wireshark,omnipeek插件过于复杂,还有不是要装驱动就是admin权限 打算重写一个,第一个版本预计150小时,如果只是简单功能可能50小时就够了,打算做完善一些,也许会有人用得着. 杂乱想法: (1)体积要小,做成单个exe文件,smartsniff, minisniffer都不到200k,所以最终不会超过500k(开发环境用tdm-gcc),程序大小的想法可能有点无聊 (2)gui 使