Python-代理-mitmproxy

2019-09-05 分类:未分类, 跟大师兄学测试 阅读(733) 评论(0)

我们在做接口测试时,常常使用到Fiddler和Charles这两款代理工具,进行请求数据的修改、返回数据的修改。其实python的mitmproxy模块也可以实现这两款工具的功能,使用起来也很简单。如下:

安装

运行

mitmproxy一共有三个启动命令mitmproxymitmdumpmitmweb,这三个启动方式本质形同,区别就是交互的方式不一样

mitmweb会启动一个页面,看到所有请求代理的接口(调试使用。页面地址127.0.0.1:8081

mitmdump后台启动(开发完成,正式部署使用。)

mitmproxy命令启动后,会提供一个命令行界面,用户可以实时看到发生的请求,并通过命令过滤请求,查看请求数据(调试使用)

三个命令启动的代理服务默认使用8080作为代理端口,单纯以命令启动没办法增加一些自动以的过滤条件,可以通过 -s 接 xx.py的脚本,实现自己的自动以过滤。

使用

直接看例子使用起来很简单。常用的方法一共就几个如:requestheaders,request,responseheaders,response,error,这是一个完整HTTP请求的链路,我们可以在这几个请求内做一下我们想做的事。

指定自定义脚本启动

配置Chrome的代理

如果想让浏览器直接访问我们写好的代理,可以下载一个chrome的插件Proxy SwitchyOmega

您可能也喜欢:

密码保护:Django – Rest – Framework 视图

APIView 1234567891011121314151617181920212223 # apiview只是提供了request和response的parses的格式化# 如果不...

more

Django – Rest – Framework 序列化器(Serializer)

drf框架中的序列化是指 将数据库模型转化为python的字典 drf框架中反序列化是指 前端传进来的字典格式的,传递给序列化器进行校验,存储数据 序列化器 序列化器的作用是 进行序列化反序列化 定义序列化器时,要知道那些字段要序列化 read_only = True 序列化时使用 前端只做展示使用...

more

Python-迭代器

迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 创建一个可迭代对象 可迭代对象的本质 可迭代对象的本质就是可以向我们提供一个这样的中间“人”即迭代器帮助我们对其进行迭代遍历使用。 ...

more

评论已关闭

登录

忘记密码 ?

切换登录

注册