aboutsummaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/add_header.py2
-rw-r--r--examples/har_extractor.py10
-rw-r--r--examples/modify_form.py2
-rw-r--r--examples/redirect_requests.py5
-rwxr-xr-xexamples/stickycookies10
-rw-r--r--examples/upsidedownternet.py4
6 files changed, 16 insertions, 17 deletions
diff --git a/examples/add_header.py b/examples/add_header.py
index 0c0593d1..cf1b53cc 100644
--- a/examples/add_header.py
+++ b/examples/add_header.py
@@ -1,2 +1,2 @@
def response(context, flow):
- flow.response.headers["newheader"] = ["foo"]
+ flow.response.headers["newheader"] = "foo"
diff --git a/examples/har_extractor.py b/examples/har_extractor.py
index f06efec3..bc784dc4 100644
--- a/examples/har_extractor.py
+++ b/examples/har_extractor.py
@@ -147,8 +147,8 @@ def response(context, flow):
response_body_size = len(flow.response.content)
response_body_decoded_size = len(flow.response.get_decoded_content())
response_body_compression = response_body_decoded_size - response_body_size
- response_mime_type = flow.response.headers.get_first('Content-Type', '')
- response_redirect_url = flow.response.headers.get_first('Location', '')
+ response_mime_type = flow.response.headers.get('Content-Type', '')
+ response_redirect_url = flow.response.headers.get('Location', '')
entry = HAR.entries(
{
@@ -201,12 +201,12 @@ def response(context, flow):
# Lookup the referer in the page_ref of context.HARLog to point this entries
# pageref attribute to the right pages object, then set it as a new
# reference to build a reference tree.
- elif context.HARLog.get_page_ref(flow.request.headers.get('Referer', (None, ))[0]) is not None:
+ elif context.HARLog.get_page_ref(flow.request.headers.get('Referer')) is not None:
entry['pageref'] = context.HARLog.get_page_ref(
- flow.request.headers['Referer'][0]
+ flow.request.headers['Referer']
)
context.HARLog.set_page_ref(
- flow.request.headers['Referer'][0], entry['pageref']
+ flow.request.headers['Referer'], entry['pageref']
)
context.HARLog.add(entry)
diff --git a/examples/modify_form.py b/examples/modify_form.py
index c2f0a47e..3e9d15c0 100644
--- a/examples/modify_form.py
+++ b/examples/modify_form.py
@@ -1,5 +1,5 @@
def request(context, flow):
- if "application/x-www-form-urlencoded" in flow.request.headers["content-type"]:
+ if "application/x-www-form-urlencoded" in flow.request.headers.get("content-type", ""):
form = flow.request.get_form_urlencoded()
form["mitmproxy"] = ["rocks"]
flow.request.set_form_urlencoded(form)
diff --git a/examples/redirect_requests.py b/examples/redirect_requests.py
index 2ae4927b..ca24c42a 100644
--- a/examples/redirect_requests.py
+++ b/examples/redirect_requests.py
@@ -2,8 +2,7 @@
This example shows two ways to redirect flows to other destinations.
"""
from libmproxy.models import HTTPResponse
-from netlib.odict import ODictCaseless
-
+from netlib.http import Headers
def request(context, flow):
# pretty_host(hostheader=True) takes the Host: header of the request into account,
@@ -14,7 +13,7 @@ def request(context, flow):
if flow.request.pretty_host(hostheader=True).endswith("example.com"):
resp = HTTPResponse(
[1, 1], 200, "OK",
- ODictCaseless([["Content-Type", "text/html"]]),
+ Headers(Content_Type="text/html"),
"helloworld")
flow.reply(resp)
diff --git a/examples/stickycookies b/examples/stickycookies
index 67b31da1..7e84f71c 100755
--- a/examples/stickycookies
+++ b/examples/stickycookies
@@ -23,16 +23,16 @@ class StickyMaster(controller.Master):
def handle_request(self, flow):
hid = (flow.request.host, flow.request.port)
- if flow.request.headers["cookie"]:
- self.stickyhosts[hid] = flow.request.headers["cookie"]
+ if "cookie" in flow.request.headers:
+ self.stickyhosts[hid] = flow.request.headers.get_all("cookie")
elif hid in self.stickyhosts:
- flow.request.headers["cookie"] = self.stickyhosts[hid]
+ flow.request.headers.set_all("cookie", self.stickyhosts[hid])
flow.reply()
def handle_response(self, flow):
hid = (flow.request.host, flow.request.port)
- if flow.response.headers["set-cookie"]:
- self.stickyhosts[hid] = flow.response.headers["set-cookie"]
+ if "set-cookie" in flow.response.headers:
+ self.stickyhosts[hid] = flow.response.headers.get_all("set-cookie")
flow.reply()
diff --git a/examples/upsidedownternet.py b/examples/upsidedownternet.py
index e8444c83..f2e73047 100644
--- a/examples/upsidedownternet.py
+++ b/examples/upsidedownternet.py
@@ -4,7 +4,7 @@ from libmproxy.models import decoded
def response(context, flow):
- if flow.response.headers.get_first("content-type", "").startswith("image"):
+ if flow.response.headers.get("content-type", "").startswith("image"):
with decoded(flow.response): # automatically decode gzipped responses.
try:
s = cStringIO.StringIO(flow.response.content)
@@ -12,6 +12,6 @@ def response(context, flow):
s2 = cStringIO.StringIO()
img.save(s2, "png")
flow.response.content = s2.getvalue()
- flow.response.headers["content-type"] = ["image/png"]
+ flow.response.headers["content-type"] = "image/png"
except: # Unknown image types etc.
pass