在 Herokuapp 上托管 flask_restplus Swagger UI 说 "No API Definition provided."

hosting flask_restplus Swagger UI on Herokuapp says "No API Definition provided."

我正在尝试在 Heroku 服务器上托管 Flask Restplus 的 Swagger UI。它 builds 成功并且在 heroku 的日志中检查时,即使在那里它也显示 "Build succeeded"。

但问题是当我检查实际托管时,页面上只有一条消息说
未提供 API 定义

顺便说一句,当本地 运行 时,swagger-UI 在浏览器上成功加载。

以下是swagger的示例代码片段-ui

from flask import Flask
from flask_restplus import Resource, Api
import os

app = Flask(__name__)
api = Api(app)

@api.route('/hello')
class HelloWorld(Resource):
    def get(self):
        return {'hello': 'world'}

if __name__ == '__main__':
    port = int(os.environ.get("PORT", 5000)) 
    app.run(host="0.0.0.0", port=port, debug=True)

那么我做错了什么?有什么方法可以在 heroku 上托管一个简单的最小 flask_restplus swagger-UI 吗?感谢任何帮助,谢谢。

编辑

以下是swagger.json

的内容
{
    "swagger": "2.0",
    "basePath": "/",
    "paths": {
        "/hello": {
            "get": {
                "responses": {
                    "200": {
                        "description": "Success"
                    }
                },
                "operationId": "get_hello_world",
                "tags": [
                    "default"
                ]
            }
        }
    },
    "info": {
        "title": "API",
        "version": "1.0"
    },
    "produces": [
        "application/json"
    ],
    "consumes": [
        "application/json"
    ],
    "tags": [
        {
            "name": "default",
            "description": "Default namespace"
        }
    ],
    "responses": {
        "ParseError": {
            "description": "When a mask can't be parsed"
        },
        "MaskError": {
            "description": "When any error occurs on mask"
        }
    }
}

此外,如果有帮助,这就是 Procfile

中的内容
web: python app.py

发布对我有用的内容,以防将来有人有同样的担忧。

我将 Procfile

更改为
web: python app.py

web: gunicorn app:app

然后 swagger-UI 第一页也开始出现在 heroku 上。早些时候端点仍然可以访问,但第一页即。 swagger-UI 页面未显示。但是进行此更改使其正常工作。