Fiddler只对post请求打断点

最近在测试一个活动,参与答题返现金,涉及到钱的话会有很多异常情况,比如说调取财务,微信的接口失败啊,但是这些异常情况,单纯的正常测试无法覆盖到,所以只能打断点,通过更改接口的请求参数来验证。

打断点其实fiddler有有个非常简单的方式:

1.Before Requests ,后台服务器调用接口请求之前打断点,还没有请求到后台的时候,用于修改入参

2、After Response ,后台调用请求之后打断点,用于修改出参

但是这种一旦设置了就是针对所有请求,不方便测试


如上图修改对应的入参或者出参后,点击Run to Commpletion就可以了

像我们平时如果接口参数网关加密的话,直接用解密方法解密修改后在加密放到上面就可以了

划重点:

就像我这次是一个h5的活动,你会发现前端有的时候会调用同一个接口两次,第一次的请求方式是options的,第二次才是真正的post请求。

什么是options的请求呢:

在有很多情况下,当我们在js里面调用一次ajax请求时,在浏览器那边却会查询到两次请求,第一次的Request Method参数是OPTIONS,还有一次就是我们真正的请求,比如get或是post请求方式,查阅相关的资料之后发现,这是浏览器对复杂跨域请求的一种处理方式,在真正发送请求之前,会先进行一次预请求,就是我们刚刚说到的参数为OPTIONS的第一次请求,他的作用是用于试探性的服务器响应是否正确,即是否能接受真正的请求,如果在options请求之后获取到的响应是拒绝性质的,例如500等http状态,那么它就会停止第二次的真正请求的访问。也就是说这样的调用安全性会比较高》

但是如果我用之前全部拦截的方法的话,就会只拦截到options请求的接口,连token,参数都没有,是无用的

下面就是如何通过脚本的方式来拦截呢:

首先fiddler,有一个基于.NET的脚本,我们可以通过修改这个脚本来修改:

下面这里可以作选择:一般就是前两个,响应前和后:

选择后他会跳到对应的方法上,直接加上圈出的这部分代码(取消注释),然后保存,就会生效,值拦截post请求的接口啦。

其他的操作方法就和前面的一样了,附上这部分脚本:

if (oSession.HTTPMethodIs("POST")){

            oSession["x-breakrequest"]="breaking for POST";

        }

其实官方的文档给出如何使用,下面是我发现的一个 比较实用的文章,有很多其他的脚本,比如只搜关键啊这些:

https://www.zhaokeli.com/article/8089.html

其实我觉的fiddler还有另外一个强大的功能就是模拟弱网环境,发送请求,可以针对这种极端的情况进行测试,下一篇将会介绍。。。。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载地址 image.png 前言 fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的htt...
    菜菜编程阅读 21,594评论 0 28
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,163评论 1 32
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,399评论 0 3
  • Getting Started Burp Suite 是用于攻击web 应用程序的集成平台。它包含了许多工具,并为...
    Eva_chenx阅读 28,910评论 0 14
  • 今天还是像往常一样七点去上早班临走总是回去亲亲熟睡的儿子,我觉得他能感受到我一大早的爱,用这种方式告诉孩子不...
    孙秀余阅读 164评论 0 0