使用apidoc管理RESTful风格Flask项目接口文档方法

木白
木白
发布时间:2026-10-13 | 2人浏览过
原创

本文介绍如何在Flask项目中集成apidoc工具,通过安装Node.js、apidoc及flask-apidoc扩展,配置manage.py启动脚本和apidoc.json文件,在视图函数中添加标准注释,最终生成静态RESTful风格接口文档。

本文介绍一种在Flask项目中利用apidoc工具来管理RESTful风格接口文档的具体方法。

apidoc项目的官方地址为:

Flask扩展包flask-apidoc的下载地址为:

生成的文档示例可查看:

第一步,确保系统中已安装Node.js。

sudo apt-get install nodejs
sudo apt install nodejs-legacy
sudo apt install npm

第二步,通过npm全局安装apidoc工具。

npm install apidoc -g

第三步,使用pip安装Flask扩展包flask-apidoc。

pip install flask-apidoc

第四步,将扩展包集成到现有的Flask项目中。

项目依赖环境包括flask>=0.10.1和flask_script>=2.0.5。

flask>=0.10.1
flask_script>=2.0.5

在项目根目录的manage.py启动脚本中,需要引入GenerateApiDoc命令并将其注册到Manager中,以便通过命令行生成文档。

from views import app
from flask_apidoc.commands import GenerateApiDoc
from flask_script import Manager
manager = Manager(app)
manager.add_command('apidoc', GenerateApiDoc())
if __name__ == "__main__":
 manager.run()

第五步,在项目根目录下创建apidoc.json配置文件。

该配置文件必须位于项目根目录,用于定义API的基本信息如名称、版本、描述和URL。

{
 "name": "Flask REST API",
 "version": "1.0.0",
 "description": "A Flask REST API example",
 "title": "A Flask REST API example",
 "url" : "http://localhost:5000"
}

在视图函数中,使用标准注释块描述API接口,包括请求方法、路径、参数、成功响应及错误响应示例。


# -*- coding: utf-8 -*-
from flask import Flask
from flask_apidoc import ApiDoc
app = Flask(__name__)
doc = ApiDoc(app=app)

@app.route('/users', methods=['POST'])
def register():
 """
 @api {post} /api/v1.0/users 注册
 @apiVersion 1.0.0
 @apiName register_user
 @apiGroup Users
 @apiParam {String} mobile  (必须) 用户手机号
 @apiParam {String} password (必须) 用户密码
 @apiParam {String} sms_code (必须) 用户短信验证码
 @apiParamExample {json} Request-Example:
  {
   mobile: "13970512239",
   password: "123456",
   sms_code: "907896"
  }
 @apiSuccess (回参) {int} user_id 用户注册id
 @apiSuccess (回参) {String} name 用户昵称
 @apiSuccess (回参) {String} mobile 用户注册手机号
 @apiSuccess (回参) {String} avatar 用户头像地址
 @apiSuccess (回参) {String} create_time 用户创建时间
 @apiSuccessExample {json} Success-Response:
  {
   "errno":0,
   "errmsg":"注册成功!",
   "data": {
    "user_id": 1,
    "name": "lynnyq",
    "mobile": "13813888888",
    "avatar": "http://p3ifu3dwc.bkt.clouddn.com/FjuAwxmcCtiud_nOZ",
    "create_time": "2010-1-1 12:12:12"
   }
  }
 @apiErrorExample {json} Error-Response:
  {
   "errno":4001,
   "errmsg":"数据库查询错误!"
  }
 """
 pass

第六步,执行命令生成RESTful风格的接口文档。

python manage.py apidoc

生成的文档默认存放于项目根目录下的static/docs文件夹中。

查看生成的接口文档页面效果,确认文档展示是否符合预期。

以上即为使用apidoc管理RESTful风格Flask项目接口文档的完整流程,供读者参考。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表