From 285996f8b451626ad3dba609d6b057d65876a6f5 Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Sun, 12 Jun 2011 19:51:49 -0400 Subject: [PATCH] decimal runtime --- httpbin/core.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/httpbin/core.py b/httpbin/core.py index 7b2835b..0839b5e 100644 --- a/httpbin/core.py +++ b/httpbin/core.py @@ -8,6 +8,8 @@ This module provides the core HttpBin experience. """ import json +from time import time as now +from decimal import Decimal from decorator import decorator from flask import Flask, request, render_template @@ -18,14 +20,17 @@ from .structures import CaseInsensitiveDict app = Flask(__name__) @decorator -def json_resource(f, *args, **kwargs): +def json_resource(f, runtime=True, *args, **kwargs): + _t0 = now() _dict = f(*args, **kwargs) + _t1 = now() dump = json.dumps(_dict) r = app.make_response(dump) r.headers['Content-Type'] = 'application/json' + r.headers['X-Runtime'] = '{0}s'.format(Decimal(str(_t1-_t0))) return r @@ -54,7 +59,9 @@ def view_origin(): def view_headers(): """Returns HTTP HEADERS.""" - return dict(headers=get_headers()) + headers = CaseInsensitiveDict(request.headers.items()) + + return dict(headers=headers)