diff options
author | Linmiao Xu <linmiao.xu@gmail.com> | 2016-07-06 21:01:04 -0700 |
---|---|---|
committer | Linmiao Xu <linmiao.xu@gmail.com> | 2016-07-06 21:10:35 -0700 |
commit | 275cf7a6c2189859ad5f5719c8b74b1bc6eebbf2 (patch) | |
tree | 4133948f2bf9aec3db1e3b2a1d9bcb9844aa9379 | |
parent | 9c873d63f4ede1b2470f8e7ea838909e60efe998 (diff) | |
download | mitmproxy-275cf7a6c2189859ad5f5719c8b74b1bc6eebbf2.tar.gz mitmproxy-275cf7a6c2189859ad5f5719c8b74b1bc6eebbf2.tar.bz2 mitmproxy-275cf7a6c2189859ad5f5719c8b74b1bc6eebbf2.zip |
Detect JSON API media type as a json content view
IANA assignment here:
https://www.iana.org/assignments/media-types/application/vnd.api+json
More about JSON API:
https://github.com/json-api/json-api
-rw-r--r-- | mitmproxy/contentviews.py | 5 | ||||
-rw-r--r-- | test/mitmproxy/test_contentview.py | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/mitmproxy/contentviews.py b/mitmproxy/contentviews.py index 6f64e360..331a706f 100644 --- a/mitmproxy/contentviews.py +++ b/mitmproxy/contentviews.py @@ -226,7 +226,10 @@ class ViewXML(View): class ViewJSON(View): name = "JSON" prompt = ("json", "s") - content_types = ["application/json"] + content_types = [ + "application/json", + "application/vnd.api+json" + ] def __call__(self, data, **metadata): pj = pretty_json(data) diff --git a/test/mitmproxy/test_contentview.py b/test/mitmproxy/test_contentview.py index 52fceeac..c11a5fe5 100644 --- a/test/mitmproxy/test_contentview.py +++ b/test/mitmproxy/test_contentview.py @@ -201,6 +201,13 @@ Larry ) assert "Raw" in r[0] + r = cv.get_content_view( + cv.get("Auto"), + b"[1, 2, 3]", + headers=Headers(content_type="application/vnd.api+json") + ) + assert r[0] == "JSON" + tutils.raises( ContentViewException, cv.get_content_view, |