flask_restplus部未产生适当的扬鞭UI

问题描述 投票:0回答:1

好吧,我必须在PyCharm以下结构的项目:

enter image description here

test_ns.py的内容如下:

from flask_restplus import Api
from flask_restplus import Resource
from flask_restplus import reqparse

api = Api(version='1.0', title='My Blog API',
          description='A simple demonstration of a Flask RestPlus powered API')

ns = api.namespace('blog/posts', description='Operations related to blog posts')

parser = reqparse.RequestParser()
parser.add_argument('Hello', required=True, location='form')


@ns.route('/')
class PostsCollection(Resource):

    @api.expect(parser)
    def get(self):
        """
        Returns list of blog posts.
        """

        return "Hello World from Swagger"

server.py的内容如下:

from web.test_ns import ns, api
from flask import Flask, Blueprint

app = Flask(__name__)


def configure_app(flask_app):
    flask_app.config['SWAGGER_UI_DOC_EXPANSION'] = 'List'
    flask_app.config['RESTPLUS_VALIDATE'] = True
    flask_app.config['RESTPLUS_MASK_SWAGGER'] = False


def initialize_app(flask_app):
    configure_app(flask_app)

    blueprint = Blueprint('api', __name__, url_prefix='/api')

    api.init_app(blueprint)
    api.add_namespace(ns)

    flask_app.register_blueprint(blueprint)


def main():
    initialize_app(app)
    app.run(host="127.0.0.1", port="5000")


if __name__ == '__main__':
    main()

问题是,我没有得到适当扬鞭UI。当我运行server.py和访问它在我的浏览器,这是我所得到的:

enter image description here

它基本上没有实际扬鞭的用户界面,我想。

我要的是什么是对flask_restplus site广告:

enter image description here

我只是不明白我在做什么错。

我已经通过在GitHub上over here项目走了,但我不明白我在做什么不同或不正确。该项目采用了扬鞭的包与我呢,我无法得到正确的输出。我要去哪里错了?

运行GitHub的项目的说明可以发现here

我的项目,GitHub的一个之间的唯一区别就是后来又是用更多的模块。

看着瓶的服务器日志,我可以看到GitHub的项目赚了很多多次调用后台生成UI:

enter image description here

虽然对我来说,我只让小号码的呼叫产生不正确我扬鞭的用户界面:

* Serving Flask app "server" (lazy loading)
 * Environment: production
   WARNING: Do not use the development server in a production environment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [08/Feb/2019 23:37:00] "GET / HTTP/1.1" 404 -
127.0.0.1 - - [08/Feb/2019 23:37:04] "GET /api/ HTTP/1.1" 200 -
127.0.0.1 - - [08/Feb/2019 23:37:04] "GET /swaggerui/favicon-16x16.png HTTP/1.1" 200 -
127.0.0.1 - - [08/Feb/2019 23:37:04] "GET /api/swagger.json HTTP/1.1" 200 -

什么是差异的原因?

我已经搜索的文档,但我无法找到任何东西。我在想什么?

即使使用例如从flask_restplus site不能给出正确扬鞭UI,为标榜。

什么是如此不可思议GitHub的项目为什么是唯一可行的项目?它是什么做正确,那我显然不是。

python swagger-ui flask-restplus
1个回答
2
投票

两个图像扬鞭UI,只是不同版本的它。

  • 第1图像(你)在扬鞭UI第3节,这是UI的当前版本。你可以看到它在https://pestore.swagger.io正式扬鞭UI演示。
  • 第2图像(从flask_restplus的文档)是扬鞭UI V 2,即不再开发/支持的旧版本。

flask_restplus的工作原理是保持它的依赖(包括扬鞭UI)如预期跟上时代的。问题是flask_restplus的文档,因为它包含扬鞭UI的过时的屏幕截图是从什么用户实际得到不同。考虑向与flask_restplus项目文档更新请求。

© www.soinside.com 2019 - 2024. All rights reserved.