aboutsummaryrefslogtreecommitdiffstats
path: root/mitmproxy/optmanager.py
diff options
context:
space:
mode:
authorMatthew Shao <me@matshao.com>2017-06-12 20:26:46 +0800
committerMatthew Shao <me@matshao.com>2017-06-12 20:26:46 +0800
commitaabc78350a73534729611a6b9bf38fb7e4b390ae (patch)
tree795e2d5a473ea87f1a6162cf1e878401ea808aa8 /mitmproxy/optmanager.py
parent2ceefe9582bd72778648d4f5a154e4d492716b80 (diff)
downloadmitmproxy-aabc78350a73534729611a6b9bf38fb7e4b390ae.tar.gz
mitmproxy-aabc78350a73534729611a6b9bf38fb7e4b390ae.tar.bz2
mitmproxy-aabc78350a73534729611a6b9bf38fb7e4b390ae.zip
Add GET /options RESTful API for mitmweb.
Diffstat (limited to 'mitmproxy/optmanager.py')
-rw-r--r--mitmproxy/optmanager.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/mitmproxy/optmanager.py b/mitmproxy/optmanager.py
index 70f60bb6..3685c003 100644
--- a/mitmproxy/optmanager.py
+++ b/mitmproxy/optmanager.py
@@ -416,6 +416,20 @@ def dump_defaults(opts):
return ruamel.yaml.round_trip_dump(s)
+def dump_dicts(opts):
+ """
+ Dumps the options into a list of dict object.
+
+ Return: A list like: [ { name: "anticahce", type: "bool", default: false, value: true, help: "help text"}]
+ """
+ options_list = []
+ for k in sorted(opts.keys()):
+ o = opts._options[k]
+ option = {'name': k, 'type': o.typespec.__name__, 'default': o.default, 'value': o.current(), 'help': o.help.strip()}
+ options_list.append(option)
+ return options_list
+
+
def parse(text):
if not text:
return {}