Fiddler修改请求、返回数据
相信你们有听过说“绕过前端”,但是可能想不到要怎样才能绕过前端呢?
首先,我们要知道什么是绕过前端?比如:登录用户名限制数字、6位,用户在登录页面填写用户名符合要求,使用Fiddler作为代理,拦截登录请求,修改这个请求提交的用户名(非数字、大于6位),此时的用户名就是不符合前端设置的要求了,若是通过Fiddler修改请求的数据,这种就叫做绕过前端。
然后,为什么会有通过测试绕过前端呢?再举个例子:下单付款->若是通过Fiddler拦截了请求,更改了商品的价格为1,再重新发送到服务器,如果此时的后端没有做校验的话,此时的商品价格只需要一元购买,要是将价格改为负数呢?余额是不是要增加了?随时绕过前端更改价格,后端没有做校验的话,后果简直不堪想象,这个就是需要通过绕过前端看后端有没有做检验的重要性!!!
那么怎么通过Fiddler修改请求和返回的数据呢?
第一种:右键选中请求 ->replay -> Ruissue and Edit -> 修改参数后 ->run to completion
第二种:设置断点 ->拦截请求后,对请求头或响应的数据 进行修改
- rules ->Automatic BreakPoints -> Before request :拦截客户端发送到服务器的请求,修改header的内容
- rules ->Automatic BreakPoints -> After response :拦截服务器响应的数据,修改后,再返回到客户端

Before request :在Fiddler拦截到请求,没有发送到服务器之前
操作步骤:
- 准备抓取请求前,选择rules ->Automatic BreakPoints -> Before request,选择这个规则后,此时浏览器属于堵塞状态(处于一直加载中,因为被拦截了,请求发送不到服务器,一直在尝试发送)
- 找到需要修改的请求,可以修改header 、WebForms的参数等
- 修改之后,取消规则 -》Disabled
- 最后,点击run to completion,此时再观察浏览,查看修改的内容是不是已经生效
实际操作:设置断点

这个图标就代表连接被拦截了,选中即可跳转到Inspectors,可修改请求的内容

拦截登录请求,修改登录的用户名,再点击run to completion,修改的内容会重新提交到服务器


修改内容之后,将规则取消 ,再点击 run to completion

After response :拦截服务器响应的数据,修改后,再返回到客户端
操作步骤:
- 选择 rules ->Automatic BreakPoints -> After response ,选择这个之后,页面也是处于加载中(被拦截了)
- 选择要修改的请求,修改返回的数据,TextView可以修改返回的响应数据
- 将rules取消,即Disabled
- 最后点击run to completion,观察页面的返回结果,是不是已经被修改了

Fiddler修改请求、返回数据的更多相关文章
- charles_01_打断点修改接口请求&返回数据
前言 测试过程中,为了模拟某场景测试,经常需要修改接口请求或者返回数据.可通过抓包工具打断点,实现模拟测试场景.常用的抓包工具charles和fiddler均可打断点mock数据.由于小编安装了cha ...
- Fiddler修改请求和响应
通过设置断点,Fiddler可以做到: 1. 修改HTTP请求头信息.例如修改请求头的UA, Cookie, Referer 信息,通过"伪造"相应信息达到达到相应的目的(调试,模 ...
- $.ajax请求返回数据中status为200,回调的却是error?
$.ajax({ type:'get',//使用get方法访问后台 dataType:'json',//访问json格式的数据 url:'http://job.hainan.net/api/recru ...
- ajax请求返回数据,模板中的数据处理
/*ajax请求返回数据,模板中的数据处理*/ function QueryGameAsset(){ var new_start_time=$('#new_start_time').val();//开 ...
- ajaxSubmit请求返回数据成功,但是不执行success回调函数
最近项目涉及到附件上传就头痛,一直在用plupload插件在做...ie9偶尔抽风但还是可以的... 然后有个需求,表格每行都有个上传按钮,页面多上传按钮. 一.开始的时候,用plupload做的,多 ...
- 通过Fiddler肆意修改接口返回数据进行测试
[本文出自天外归云的博客园] 方法介绍与比对 在测试的过程中,有的需求是这样的,它需要你修改接口返回的数据,从而检查在客户端手机app内是否显示正确,这也算是一种接口容错测试,接口容错测试属于app性 ...
- fiddler修改请求和返回
一.修改请求 1.先设置请求前断点 2.设置拦截,在左下角的QuickExec命令行中输入bpu www.baidu.com/XXXX 3.选中需要修改的请求,选中Inspectors面板,使用Raw ...
- fiddler修改请求包和返回包
设置好过滤后,找到需要修改的包,按如下步骤进行包的数据修改1.设置"禁止上传"(禁止XX为本人自己理解,专业术语不记得了,高手可留言笔者重新修订博文),打上断点,如下标志就是在请求 ...
- 测试调试-利用fiddler修改response返回结果
测试前端过程中,经常需要验证各种功能状态.不同数据层级等返回后的展示效果.一般会通过以下三种方式进行测试: 1.构造满足条件的测试数据:(耗时费力) 2.修改数据库:(前提需要了解数据库数据存储.沟通 ...
随机推荐
- 什么是 superset
Superset 是 Airbnb 开源的大数据可视化平台,其特性包括: backend 支持几乎所有主流的数据库 支持复杂的权限控制和管理(OpenId, OAuth 等),满足企业内部不同部门人员 ...
- ACM(数学问题)——UVa202:输入整数a和b(0≤a≤3000,1≤b≤3000),输出a/b的循环小数表示以及循环节长度。
主要思路: 通过模拟除法运算过程,来判断循环节结束的位置,不断将余数*10再对除数取余得到新的余数,并记录下来,知道出现的余数之前出现过,此时小数开始循环. 例如: 假设 -> a ...
- js中的原型对象链
由于原型对象也是一个对象,它也有自己的原型对象并继承对象中的属性,这就是原型对象链:对象继承其原型对象,而原型对象继承它的原型对象,以此类推. 我们创建的每一个函数都有一个prototype(原型)属 ...
- app微信支付-java服务端接口 支付-查询-退款
个人不怎么看得懂微信的文档,看了很多前辈的写法,终于调通了,在这里做一下记录. 首先来定义各种处理类(微信支付不需要特殊jar包,很多处理需要自己封装,当然也可以自己写完打个jar包) 参数要用jdo ...
- 20175229张智敏 Arrays和String单元测试
Arrays和String单元测试 1.具体要求: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split A ...
- shell脚本学习-循环
跟着RUNOOB网站的教程学习的笔记 for循环 与其他编程语言类似,shell支持for循环. for循环一般格式为: for var in item1 item2 ... itemN do com ...
- [swarthmore cs75] Compiler 3 – Cobra
课程回顾 Swarthmore学院16年开的编译系统课,总共10次大作业.本随笔记录了相关的课堂笔记以及第5次大作业. 增加了bool数据表示和比较运算符的支持,具体语法参考下图: 第一种int和bo ...
- orm介绍
昨日回顾: 1 今日内容: 1 orm介绍 1 tools--->Run manage.py Task python3 manage.py makemigrations 只需要敲命令:makem ...
- idea与maven整合
1.官网下载 apache-maven-3.3.3 2.解压安装后配置conf-settings文件 a. <localRepository>E:\JAVA\maven_cangku< ...
- JS入门经典第四章总结
charAt():该函数有一个参数,即选择哪一个位置上的参数.返回值就是该位置上的字符. charCodeAt():该函数有一个参数,即选择哪一个位置上的参数.返回值是该位置字符在Unicode字符集 ...