Quantcast
Channel: Active questions tagged python - Stack Overflow
Viewing all articles
Browse latest Browse all 23247

Python Flask Blueprint routes always print request and response content

$
0
0

In my Python Flask app I use Blueprint route to serve and handle API requests.

app/init.py

from api.foo import foo_routedef create_app(config):    app = Flask(__name__)    app.register_blueprint(foo_route)    ...    return app

api/foo.py

from flask import Blueprint, request, jsonifyfoo_route = Blueprint("foo", __name__)@foo_route.route("/path/to/foo/API", methods=["POST"])def handle_foo_api(request):    result = {"foo1": "foo1", "foo2": "foo2"}    return jsonify(result), 200

How can I print all API request headers/body and response headers/body?

I can print it inside each function. For example, to print the request header for function handle_foo_api:

@foo_route.route("/path/to/foo/API", methods=["POST"])def handle_foo_api(request):    logger.info(f"handle_foo_api request headers: {request.headers}")    logger.info(f"handle_foo_api request data: {request.json}")    result = jsonify({"foo1": "foo1", "foo2": "foo2"})    logger.info(f"handle_foo_api response headers: {resp.headers}")    logger.info(f"handle_foo_api response data: {resp.get_json()}")    return result, 200

But I would like to do it once and for all, instead of in each function. How can I do that?


Viewing all articles
Browse latest Browse all 23247

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>