diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/rz_req_handling.py | 63 |
1 files changed, 32 insertions, 31 deletions
diff --git a/src/server/rz_req_handling.py b/src/server/rz_req_handling.py index 53344170..faae47d1 100644 --- a/src/server/rz_req_handling.py +++ b/src/server/rz_req_handling.py @@ -2,6 +2,38 @@ from flask import jsonify from flask import make_response import json +def common_resp_handle(data=None, error=None, status=200): + """ + common response handling: + - add common response headers + - serialize response + + @data must be json serializable + @error will be serialized with str() + """ + + def __response_wrap(data=None, error=None): + """ + wrap response data/errors as dict - this should always be used when returning + data to allow easy return of list objects, assist in error case distinction, etc. + """ + return dict(data=data, error=error) + + if error is None: + error_str = "" + else: + error_str = str(error) # convert any Exception objects to serializable form + + + ret_data = __response_wrap(data, error_str) + resp = Response(ret_data, mimetype='application/json') + resp.headers['Access-Control-Allow-Origin'] = '*' + + # jsonify(ret_data) # this will create a Flask Response object + + # more response processing + return resp + def make_response__json(status=200, data={}): """ Construct a json response with proper content-type header @@ -45,34 +77,3 @@ def make_response__json__redirect(redirect_url, status=303, html_str=''): """ return make_response__json(data={'response__html': html_str, 'redirect_url': redirect_url }) - -def common_resp_handle(data=None, error=None): - """ - common response handling: - - add common response headers - - serialize response - - @data must be json serializable - @error will be serialized with str() - """ - - def __response_wrap(data=None, error=None): - """ - wrap response data/errors as dict - this should always be used when returning - data to allow easy return of list objects, assist in error case distinction, etc. - """ - return dict(data=data, error=error) - - if error is None: - error_str = "" - else: - error_str = str(error) # convert any Exception objects to serializable form - - ret_data = __response_wrap(data, error_str) - resp = jsonify(ret_data) # this will create a Flask Response object - - resp.headers['Access-Control-Allow-Origin'] = '*' - - # more response processing - - return resp |
