我正在使用Flask和Flask Restplus构建一个非常复杂的微服务。
它将有许多端点,因此我将每个端点组织到一个单独的蓝图中。
下面的示例代码和目录结构应该会给您一个提示,让您了解我的想法:
.
├── endpoints
│ ├── endpointa.py
│ ├── endpointb.py
│ ├── endpointc.py
│ └── __init__.py
├── __init__.py
└── run.py
我的maininit.py如下所示:
^{pr2}$在端点a.py相应的蓝图:
from os import environ
import json, ast, syslog
import requests
import gc
from flask import Flask, Blueprint, logging, jsonify, request, Response
from flask_restplus import Resource, Api
endpointa_api = Blueprint('endpointa_api', __name__)
@endpointa_api.route('testa', methods=['GET'])
def testa():
...
@endpointa_api.route('testa/<string:testa_id>', methods=['GET', 'POST'])
def testa_id():
...
再说一遍: 我可以通过postman访问我的端点,但是swagger用户界面没有显示任何内容:
通常,我会使用类似于
api.add_resource(TestClass, api_prefix + 'test')
但这似乎不可能有多个蓝图。在
有谁能告诉我如何在api中添加/注册这些蓝图(endpointa_api、endpointb呬api和endpointc_api)?
使用Flask Restplus有两种可能的解决方案:
Api
s您可以在文档中阅读这两方面的内容: https://flask-restplus.readthedocs.io/en/stable/scaling.html
名称空间
蓝图API
^{pr2}$相关问题 更多 >
编程相关推荐