aboutsummaryrefslogtreecommitdiffstats
path: root/examples/change_upstream_proxy.py
diff options
context:
space:
mode:
authorJim Shaver <dcypherd@gmail.com>2015-05-31 01:21:44 -0400
committerJim Shaver <dcypherd@gmail.com>2015-05-31 01:21:44 -0400
commitb51363b3ca43f6572acb673186e6ae78a1f48434 (patch)
treea7488b32871c142141a813dc6ff2ede172672c31 /examples/change_upstream_proxy.py
parent4fe2c069cca07aadf983f54e18dac4de492d5d69 (diff)
parent06fba18106a8f759ec6f08453e86772a170c653b (diff)
downloadmitmproxy-b51363b3ca43f6572acb673186e6ae78a1f48434.tar.gz
mitmproxy-b51363b3ca43f6572acb673186e6ae78a1f48434.tar.bz2
mitmproxy-b51363b3ca43f6572acb673186e6ae78a1f48434.zip
Merge remote-tracking branch 'upstream/master' into print-bracket-fix
Conflicts: examples/har_extractor.py examples/nonblocking.py examples/read_dumpfile libmproxy/web/app.py
Diffstat (limited to 'examples/change_upstream_proxy.py')
-rw-r--r--examples/change_upstream_proxy.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/examples/change_upstream_proxy.py b/examples/change_upstream_proxy.py
index 74a43bd0..7782dd84 100644
--- a/examples/change_upstream_proxy.py
+++ b/examples/change_upstream_proxy.py
@@ -1,10 +1,13 @@
# This scripts demonstrates how mitmproxy can switch to a second/different upstream proxy
# in upstream proxy mode.
#
-# Usage: mitmdump -U http://default-upstream-proxy.local:8080/ -s "change_upstream_proxy.py host"
+# Usage: mitmdump -U http://default-upstream-proxy.local:8080/ -s
+# "change_upstream_proxy.py host"
from libmproxy.protocol.http import send_connect_request
alternative_upstream_proxy = ("localhost", 8082)
+
+
def should_redirect(flow):
return flow.request.host == "example.com"
@@ -15,7 +18,12 @@ def request(context, flow):
# If you want to change the target server, you should modify flow.request.host and flow.request.port
# flow.live.change_server should only be used by inline scripts to change the upstream proxy,
# unless you are sure that you know what you are doing.
- server_changed = flow.live.change_server(alternative_upstream_proxy, persistent_change=True)
+ server_changed = flow.live.change_server(
+ alternative_upstream_proxy,
+ persistent_change=True)
if flow.request.scheme == "https" and server_changed:
- send_connect_request(flow.live.c.server_conn, flow.request.host, flow.request.port)
+ send_connect_request(
+ flow.live.c.server_conn,
+ flow.request.host,
+ flow.request.port)
flow.live.c.establish_ssl(server=True)