首页 > 技术文章 > fiddler 第三方支付进行修改金额的测试

cheneyboon 2021-04-12 11:59 原文

  近期因为项目添加了一个支付功能,而这里就必须要涉及第三方接口的测试,那使用fiddler打断点修改金额虽然是众所周知的事情,但是也不能忽略他的重要性。如果是一个新人开发在这里忘记了加入校验恰巧测试忘记了测试,那么必然会造成不可挽回的经济损失。话不多说,我们直接进入主题。

  1. 首先我们需要配置好fiddler抓包环境,如果是app端就要配置手机抓包,至于怎么配置,可以去看我的之前的博客:传送门

  2.配置好fiddler抓包环境后,我们首先确定好支付的url,像我这样打开fiddler然后选择支付宝支付,再看fiddler抓到的包,因为是支付宝,所以调用的接口是支付宝的,这里我立马就锁定了https://openapi.alipaydev.com/接口,总之这里的url很长,后面还有参数,但是我们只需要前面这种固定的格式就可以了,这里也讲一下怎么判定是哪个url,首先选择webFroms,然后在body里面看是否有跟订单支付有关的没有,一般有的话,在total参数里面就是订单金额了。

  

  

   

   3. 这里我们在fiddler设置断点,抓取请求的断点,在1的位置输入下面代码,然后在2的位置就会出现如下显示。表示遇到这个类似的网址就会暂停可以进行参数修改,编辑在发送服务器。

 bpu https://openapi.alipaydev.com/

  

   4.然后我们在重新走一遍流程,先点击生成订单,用支付宝支付。

  这里我们再次运行后,就发现,在这个左边的fiddler显示框中有一个红色的T显示的url,你点击他就会出现以下的图片,说明请求被暂停了,然后你在webForm或者Raw找下有没有你要的body。你现在可以修改total_amoun的值了,这时你修改完成后点击Run to Completion就可以以你修改的值进行发送了。那么原价98要买的商品,现在就以9.8的价格发送给服务器。

  

  

   5. 最后检查程序是否正常,是否显示支付二维码让你以9.8的价格买到此商品,这里我这边是页面直接显示错误了,说明还是有做校验的

 

推荐阅读