因此,按照使用烧瓶蓝图(https://github.com/rantav/flask-restful-swagger/blob/master/examples/blueprints.py)的swagger ui的示例,我有以下代码:
app = Flask(__name__)
test_blueprint = Blueprint('tests', __name__)
test_api = swagger.docs(restful.Api(test_blueprint), apiVersion='0.1',
basePath='http://localhost:5000',
produces=["application/json", "text/html"],
api_spec_url='/api/spec')
# Operation TestOp defined here
test_api.add_resource(TestOp, '/')
if __name__ == "__main__":
app.register_blueprint(test_blueprint, url_prefix='/test')
app.run(debug=True)
但是,当我尝试访问api规范文档时,无法找到该URL。我试过了...
localhost:5000/api/spec
localhost:5000/test_api/api/spec
localhost:5000/test_api
...所有这些都返回404.我也尝试创建没有蓝图的应用程序,创建文档
swagger.docs(restful.Api(app)...)
代替。如果完成此操作并且没有涉及蓝图,我可以访问文档
localhost:5000/api/spec
那么,我是否使用蓝图错误地创建了我的应用程序,或者我只是没有使用正确的URL来访问文档?
看起来你只是没有找到正确的URL。因为你的蓝图url_prefix是“/ test”,所以Swagger规范网址应该是:
localhost:5000/test/api/spec
我知道这个线程已经过时了,但我今天遇到了这个问题,试图用我的(有点)现代烧瓶+ python3应用程序使用烧瓶 - 使用蓝图。同样的问题,没有错误,无论我尝试什么都没有规格。
我终于放弃了这个软件包(因为它看起来似乎并不是非常活跃),尽管我喜欢这个软件包的标记。
我选择了Flasgger,它最近似乎更新了。在10分钟内我完成并运行了。代码和简短教程在这里:https://github.com/rochacbruno/flasgger
swagger.docs()出错了
from flask_restful import Api
test_blueprint = Blueprint('tests', __name__)
test_api = swagger.docs(Api(test_blueprint)...)
app.register_blueprint(test_blueprint)
还有什么
main_blueprint = Blueprint('api', __name__, url_prefix='/demo')