mitmproxy/examples/addons/duplicate-modify-replay.py

16 lines
553 B
Python
Raw Normal View History

"""Take incoming HTTP requests and replay them with modified parameters."""
2016-10-26 05:06:52 +00:00
from mitmproxy import ctx
2016-07-08 01:37:33 +00:00
def request(flow):
# Avoid an infinite loop by not replaying already replayed requests
if flow.is_replay == "request":
return
flow = flow.copy()
# Only interactive tools have a view. If we have one, add a duplicate entry
# for our flow.
if "view" in ctx.master.addons:
ctx.master.commands.call("view.flows.add", [flow])
flow.request.path = "/changed"
ctx.master.commands.call("replay.client", [flow])