惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 三生石上(FineUI控件)
J
Java Code Geeks
Apple Machine Learning Research
Apple Machine Learning Research
Jina AI
Jina AI
博客园_首页
C
Check Point Blog
小众软件
小众软件
博客园 - 叶小钗
Blog — PlanetScale
Blog — PlanetScale
Engineering at Meta
Engineering at Meta
美团技术团队
Martin Fowler
Martin Fowler
Vercel News
Vercel News
D
Docker
罗磊的独立博客
B
Blog RSS Feed
The Cloudflare Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 聂微东
Last Week in AI
Last Week in AI
T
Tailwind CSS Blog
雷峰网
雷峰网
博客园 - Franky

博客园 - kylinfish

sentry 9.1.1docker版onepremise过程记录 python内置函数all使用的坑 centos7.2自带的php5.4升级为5.6 ubuntu14.04 编译安装gcc-5.3.0 ubuntu14.04编译安装Git2.7 ubuntu启动器和dash里应用图标不正常 ubuntu14.04使用IceGridAdmin图形界面 在线手册收藏 VIM配置相关记录 virtualbox 错误解决记录 Docker资源收录 mysql workbench的PK,NN,UQ,BIN,UN,ZF,AI GIT非常见命令使用笔记 Google的Python代码格式化工具YAPF详解 在ubuntu上使用QQ的经历 Ubuntu 14.04 下安装Skype pip install lxml mysql-python error 情人节的宠物-测试小工具 环信REST API python SDK
API接口数据自检
kylinfish · 2015-02-09 · via 博客园 - kylinfish

  这个周末的娱乐,通用模块,让后端自检,严格客户端按照文档的要求来,妈妈再也不担心我加班了,对某些团队来说,可能根本用不着,本是想到就尝试一把而已。

  哎,傻X的客户端程序员,时间都去推辞扯淡打扮啦好好的文档还不足够,三项而已:接口地址、请求类型、必填及选填参数,老接口调错而错误不自知。

check-docking.

https://pypi.python.org/pypi/check-docking/

check-docking is a Python package that inspect request data from client for you.

介绍:

仅为总结前项目的经验, 在后续项目上, 接口文档的定义入库, 结合入库的数据生成配置文件.

根据生成的配置文件, 当客户端与服务端对接时, 让程序能够自动检查客户端的传入, 并将问题返回给客户端.

该模块的目的在于减少客户端开发过程中, 在琐屑问题上对服务端的干扰. 如请求类型错误, 多参, 少参, 重参, 数据类型错误, 是否必填项等等.

使用:

配置settings.py修改:

# check-docking配置项

IS_DATA_INSPECT = True # 仅 DEBUG 为 True 时有效

INSPECT_PROFILE = “project.check_config” # 检测依赖配置文件模块

INSTALLED_APPS 增加:

‘check_docking’,

‘check_docking.stored.django’,

下面两项非必须, 需要完成使用流程节点, 生成依赖的配置文件后启用其一.

MIDDLEWARE_CLASSES 增加:

‘check_docking.middleware.InspectMiddleware’

除了MiddleWare形式, 你也可以使用装饰器形式:

from check_docking.inspect import debug_request

@debug_request

你还可以使用工具, 从源代码中搜集数据并入库, 具体可以参看project_demo/demo/demo.py中代码.

流程:

python manage.py syncdb

python manage.py runserver

http://127.0.0.0:8000/admin 录入数据.

python manage.py inspectprofile