宝马OCR系统开发规范
代码规范
- 参考 python_specification.md
- 帐号、密码严禁提交到git仓中
- 参与开发前请阅读十二要素应用宣言
接口文档
接口文档使用openapi
规范书写, 可以参考demo以获取直观感受。
目前,接口文档写在代码中, 并通过脚本将代码中的文档提取出来, 示例如下。
-
编写文档
class UserInfoView(APIView): def get(self, request): user_info = serializers.staff_detail.dump(request.user).data return APIResponse.ok(user_info) get.openapi_doc = ''' summary: 获取个人信息 tags: - 帐号 responses: 200: description: ok content: application/json: schema: type: object properties: meta: $ref: '#/components/schemas/ApiResponseMeta' data: $ref: '#/components/schemas/AccountInfoDetail' '''
-
提取接口文档
$: python manage.py generate_api_doc -o ../docs/main.yaml api doc generated succssfully: ../docs/main.yaml
-
校对接口文档
$: python manage.py validate_api_doc ../docs/main.yaml ok
查看接口文档
* 方法1: 粘贴到[online editor](http://editor.swagger.io/)中查看
* 方法2: 安装 https://bitbucket.org/abrahamL/openapi_toolset.git
```
$: cd docs
$: ls
main.yaml
$: python -m openapi_toolset
* Serving Flask app "openapi_toolset" (lazy loading)
* Environment: production
WARNING: Do not use the development server in a production environment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:9090/ (Press CTRL+C to quit)
```
浏览器访问http://127.0.0.1:9090即可查看文档