gpt4 book ai didi

python - 如何将应用程序包装端点添加到 Restplus API 文档?

转载 作者:行者123 更新时间:2023-12-01 07:51:27 24 4
gpt4 key购买 nike

我有一个 Flask REST API。我用healthcheck.EnvironmentDump以便轻松转储我的服务运行的环境。是否可以将端点添加到 Restplus 生成的 Swagger 文档中?

示例

需求.txt

flask
flask-restplus
gitpython
healthcheck

应用程序.py

#!/usr/bin/env python

"""Simple Flask/Swagger/REST-API example."""

from flask import Flask
from flask_restplus import Resource, Api
from healthcheck import EnvironmentDump

app = Flask(__name__)
api = Api(app, doc='/doc')

# wrap the flask app and give a environment url
# TODO: Add this to API
envdump = EnvironmentDump(app, "/environment")


@api.route('/version')
class VersionAPI(Resource):
def get(self):
import git
repo = git.Repo(search_parent_directories=True)
sha = repo.head.object.hexsha
return sha


@api.route('/health')
class HealthAPI(Resource):
def get(self):
import datetime
return datetime.datetime.now().isoformat()

if __name__ == "__main__":
app.run(host='0.0.0.0')

最佳答案

EnvironmentDump 和 HealthCheck 将为端点安装各自的处理程序,因此将无法访问您定义的资源中的 get() 实例。话虽这么说,提供 stub 资源足以使其显示在 Flask-RESTPlus 生成的 Swagger 文档中:

health = HealthCheck(app, '/healthcheck')

@api.route('/healthcheck')
class HealthCheckResource(Resource):
def get(self):
pass

关于python - 如何将应用程序包装端点添加到 Restplus API 文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56193559/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com