zoukankan      html  css  js  c++  java
  • Fiddler改包的三种方式

      fiddler作为一个抓包道理工具,接收从客户端/H5发出的请求,再发给服务器,接收从服务器得到的响应,再发给客户端/H5,过程如下图

      在工作中,我们经常会碰到这样的问题:客户端限制输入100个字,超过100个就不让输入,但是后台有没有限制这个字段的字数呢?当然我们也可以利用jmeter/postman来模拟请求,但是比较复杂,用fiddler抓包后直接改包,就可以,十分便捷。

     改包的三种方式
    1.全局断点,Rules->Automatic Breakpoints->Before requests/After responses 可以打开全局断点,点击Disable可以关闭断点

     比如点击Before requests,然后页面打开www.baidu.com

    fiddler的每个请求都处于等待状态,同时底部的工具栏也亮了

    查看该请求的Raw选项卡,修改请求,比如说添加参数a=1

     修改完后可以点击两个按钮 

    Break on Response ,相当于在服务器返回后继续拦截,此时可以继续改Raw下的内容,然后点击 Run to completion,把内容返回给客户端,该请求结束

     

     Run to completion:不拦截服务器返回,直接返回给客户端,该请求结束

    2.bpu单个断点 

    在命令区输入 bpu  www.baidu.com  ,其实只要输入请求的子字符串,匹配该字符串的请求就会被拦截,不支持正则表达式,因此这样写也可以 bpu baidu

    现在再访问 www.baidu.com,也是一样的fiddler等待,底部高亮

     

    之后的操作就和上面的一样了

    关闭拦截:上面选择Disable就可以了,这里关闭在命令行输入bpu就可以取消拦截

    3.AutoResponder

    这是fiddler的一个选项卡,可以提前设置响应的内容,不需要再请求过程中去修改

    Enable Rule:打开该规则

    Unmatched request passthrough:不匹配规则的请求就放行,不理他

    请求一个百度首页,然后把它拖到这个选项卡中

    设置匹配规则,其中常用的有如下几种:

    1.匹配链接,我们拖进去会显示为EXACT:xxx,我们可以改为要匹配的链接的子字符串,如baidu,当有链接包含baidu就会自动返回设定的值

    2.URLWithBody  这里要匹配两个url和body,所以一般都是用例匹配POST请求,比如 URLWithBody:baidu name,当遇到url中包含baidu,且body中有name的,就会自动返回设定的值

    3.Header:Accept=html  当请求的Header中包含Accept=html,就会自动返回设定的值

     返回值设置:可以把响应的值设置为404,503等,但是常用的是选择一个本地文件

    打开百度首页,在请求中,我们会发现其中的logo图片请求

     把这个请求拖到AutoResponsder,在选择一个本地图片find a file,把上面的enable和unmatched都勾选上,点击save

     此时ctrl+F5刷新百度,注意不能用缓存,然后就变成这样

    如果是要在已存在的返回中修改呢?首先必须获得一个返回,在raw中修改,保存,再把这个作为自动返回。

    打开百度首页,抓包,修改raw

     改成闪电1111

     将该请求保存save->response->entire response,保存名为entire

     按照上面的步骤,把这个请求拖到AutoResponder,选择find a file,选择刚才的entire,

    再次ctrl+F5刷新页面。变成了闪电估分1111

      总结:Before requests/After responses会对所有的请求都阻断,bpu可以对指定的某一些阻断,然后再自己去改,AutoResponder可以提前设置返回的值

    打字太累了,如果觉得有帮助,不妨请作者喝杯可乐吧!

  • 相关阅读:
    Dialog中添加多选按钮CheckBox
    把格式日期转换成毫秒
    监听EditText输入事件
    浅析LocationManager的位置定位
    Android 字体设置
    Android开发之InstanceState详解
    Bash中自动补全时忽略大小写
    51与PC通信协议设计及实现(九):更深入的扩展
    推到重做
    51与PC通信协议设计及实现(五):问题收集解决随笔
  • 原文地址:https://www.cnblogs.com/diwangguilai/p/13280879.html
Copyright © 2011-2022 走看看