diff options
-rw-r--r-- | mitmproxy/flow_export.py | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/mitmproxy/flow_export.py b/mitmproxy/flow_export.py index 52145516..97d5f403 100644 --- a/mitmproxy/flow_export.py +++ b/mitmproxy/flow_export.py @@ -1,7 +1,25 @@ import urllib -import netlib.http from textwrap import dedent +import netlib.http +from . import contentviews + + +def prettify(data, headers=None): + if not headers: + return data + + cv = contentviews.get_content_view( + contentviews.get("Auto"), + data, + headers=headers, + ) + + if cv[0] == "JSON": + return "\n".join(l[0][1] for l in cv[1]) + else: + return data + def curl_command(flow): data = "curl " @@ -53,7 +71,7 @@ def python_code(flow): data = "" if flow.request.body: - data = "\ndata = '''%s'''\n" % flow.request.body + data = "\ndata = '''%s'''\n" % prettify(flow.request.body, flow.request.headers) args += "\n data=data," code = code.format( |