Swagger是一个强大的API设计和文档工具,在Linux环境下使用时,以下最佳实践可以帮助您提高效率并确保API质量。
bash
npm install -g swagger-cli
bash
docker pull swaggerapi/swagger-editor
docker run -d -p 8080:8080 swaggerapi/swagger-editor
api/
├── specs/ # Swagger规范文件
│ ├── common.yaml # 公共定义
│ ├── users.yaml # 用户相关API
│ └── products.yaml # 产品相关API
├── dist/ # 生成的文档
└── scripts/ # 自动化脚本
$ref
拆分大型规范文件
yaml
paths:
/users:
$ref: "./paths/users.yaml"
yaml
paths:
/api/v1/users:
...
/api/v2/users:
...
yaml
/users/{id}:
get:
summary: 获取用户详情
description: 根据用户ID返回完整的用户信息
parameters:
- name: id
in: path
description: 用户唯一标识符
required: true
schema:
type: string
example: "5f8d0d55b54764421b7156c3"
bash
swagger-cli validate api/specs/main.yaml
bash
npm install -g dredd
dredd api/specs/main.yaml http://localhost:3000
bash
npm install -g redoc-cli
redoc-cli bundle api/specs/main.yaml -o dist/index.html
securityDefinitions:
Bearer:
type: apiKey
name: Authorization
in: header
x-examples
而非example
字段展示示例数据swagger-stats
监控API性能
bash
npm install swagger-stats
bash
docker run --rm -v ${PWD}:/local swaggerapi/swagger-codegen-cli generate \
-i /local/api/specs/main.yaml \
-l nodejs-server \
-o /local/server
通过遵循这些最佳实践,您可以在Linux环境下更高效地使用Swagger设计和维护高质量的API。