利用代理使用线上web页面进行本地接口测试

一、目的

​ 前后端分离的项目,后端接口出现bug时单独调用接口测试不方便,而且可能会影响其他接口。因此利用前端可视化页面通过代理将接口url重定向到开发机进行测试

二、mitmproxy

​ mitmproxy 是 man-in-the-middle proxy 的简称,译为中间人代理工具,可以用来拦截、修改、保存 HTTP/HTTPS 请求。以命令行终端形式呈现,操作上类似于Vim,同时提供了 mitmweb 插件,是类似于 Chrome 浏览器开发者模式的可视化工具。

​ 它是基于Python开发的开源工具,最重要的是它提供了Python API,可以通过Python代码来控制请求和响应。

1. 安装
sudo pip3 install mitmproxy
2. 脚本
"""设置简单的http代理,并将https://api-report.aft1v1.com开头的请求重定向到127.0.0.1:9000"""
from mitmproxy import http

def request(flow: http.HTTPFlow) -> None:
    try:
        if flow.request.pretty_url.startswith('https://要进行代理的url'):
            flow.request.http_version = 'HTTP/1.1'
            flow.request.host = '127.0.0.1'
            flow.request.scheme = 'http'
            flow.request.port = 9000
    except Exception as e:
        print(e)
3. 脚本启动

mitmproxy -s 脚本名.py

4. mitmproxy快捷键
  1. ? 帮助文档
  2. q 返回/退出程序
  3. b 保存response body
  4. f 输入过滤条件
  5. k 上
  6. j 下
  7. h 左
  8. l 右
  9. space 翻页
  10. enter 进入接口详情
  11. z 清屏
  12. e 编辑
  13. r 重新请求

三、手机设置代理

  1. 与pc端链接同一个局域网,设置WiFi代理端口为pc端ip,端口为mitmproxy端口(默认8080)。
  2. 手机浏览器访问mitm.it,下载安装mitmproxy证书,完成验证
  3. 安装成功后可能有些APP无法上网,这时还需要添加证书的信任

四、chrome设置代理

使用SwitchyOmega插件,下载安装证书

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值