34

私が書いた Flask REST API から REST API ドキュメントを自動生成する簡単な方法を探しています。これを行うことができるツールと、コードをマークアップする方法を知っている人はいますか?

4

3 に答える 3

24

Sphinxをお勧めします。ドキュメントを追加する__doc__と、Sphinxのautodocモジュールがドキュメントを生成します(docs.python.orgもSphinxを使用します)。マークアップはreStructuredTextで、Markdownに似ています(Markdownが必要な場合は、pdocを使用できます)。

例えば:

@app.route('/download/<int:id>')
def download_id(id):
    '''This downloads a certain image specified by *id*'''
    return ...
于 2013-01-12T17:19:12.730 に答える
22

コードにいくつかのデコレータとコメントを追加するだけで API ドキュメントを生成できるので、Swaggerが本当に気に入っています。Flask Swaggerが利用可能です。

from flask import Flask
from flask.ext.restful import  Api
from flask_restful_swagger import swagger

app = Flask(__name__)
api = swagger.docs(Api(app), apiVersion='1', api_spec_url="/api/v1/spec")

class Unicorn(Resource):
"Describing unicorns"
@swagger.operation(
    notes='some really good notes'
)
def get(self, todo_id):
...

次に、/api/v1/spec にアクセスするだけで、html インターフェイスでメソッドとメモを確認できます (必要な静的情報が自動的に提供されます)。また、すべての API 記述を JSON で取得し、別の方法で解析することもできます。

于 2014-11-17T14:55:09.723 に答える