def get_dict(*keys, **extras): """ main helper function that generates a dict with subset of keys as requested """ _keys = ('url', 'args', 'form', 'data', 'origin', 'status', 'headers', 'files', 'json', 'timestamp', 'cookies') assert all(map(_keys.__contains__, keys)) data = request.data form = request.form try: _json = json.loads(data) except ValueError: _json = None d = dict( url = request.url, args = request.args, form = form, data = helpers.json_safe(data), origin = get_ip(), headers = get_headers(), files = get_files(), json = _json, timestamp = int(time.time()), status = "ok", cookies = request.cookies ) response_dict = dict() for k in keys: response_dict[k] = d[k] for e in extras: response_dict[e] = extras[e] return response_dict
def get_files(): """ returns files from the request context """ files = dict() for k, v in request.files.items(): files[k] = helpers.json_safe(v.read(), request.files[k].content_type) return files