17 lines
560 B
Python
17 lines
560 B
Python
"""Take incoming HTTP requests and replay them with modified parameters."""
|
|
|
|
from mitmproxy import ctx
|
|
|
|
|
|
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.duplicate", [flow])
|
|
flow.request.path = "/changed"
|
|
ctx.master.commands.call("replay.client", [flow])
|