app/init.py
Код: Выделить всё
from api.foo import foo_route
from api.bar import bar_route
def create_app(config):
app = Flask(__name__)
app.register_blueprint(foo_route)
app.register_blueprint(bar_route)
...
return app
Код: Выделить всё
from flask import Blueprint, request, jsonify
foo_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
@foo_route.route("/path/to/foo/API/2", methods=["POST"])
def handle_foo_api_2(request):
result = {"foo3": "foo3", "foo4": "foo4"}
return jsonify(result), 200
Код: Выделить всё
from flask import Blueprint, request, jsonify
bar_route = Blueprint("bar", __name__)
@bar_route.route("/path/to/bar/API", methods=["POST"])
def handle_bar_api(request):
result = {"bar1": "bar1", "bar2": "bar2"}
return jsonify(result), 200
@bar_route.route("/path/to/bar/API/2", methods=["POST"])
def handle_bar_api_2(request):
result = {"bar3": "bar3", "bar4": "bar4"}
return jsonify(result), 200
Я могу распечатать его внутри каждой функции. Например, чтобы напечатать заголовок запроса для функции 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
Подробнее здесь: https://stackoverflow.com/questions/784 ... se-content