API 接口设计规范( 二 )

  • 当请求需要缓存并且有需要及时更新的情况,可以分多个请求 。
  • 文档这个无需多说,在系统对接的时候,有文档绝对是个福音 。
    • 尽量采用自动化接口文档,可以做到在线测试,同步更新 。
    • 应包含:接口BASE地址、接口版本、接口模块分类等 。
    • 每个接口应包含: 接口地址:不包含接口BASE地址 。请求方式: get、post、put、delete等 。请求参数:数据格式【默认JSON、可选form data】、数据类型、是否必填、中文描述 。响应参数:类型、中文描述 。
    • 特殊code映射码表
    瘦客户端客户端任何的修改都是需要发版的,发版需要审核流程 。
    • 客户端尽量只负责展示逻辑,不处理业务逻辑
    • 客户端不处理金额的计算
    • 客户端少处理请求参数的校验与约束提示
    接口日志方便故障定位,错误重放,日志统计分析等
    上传/下载上传/下载,参数增加文件md5,用于完整性校验
    性能优化合并接口
    字段简写
    无用字段清理
    图片裁剪
    局部刷新
    预加载
    【API 接口设计规范】其他
    接口安全,防参数篡改
    频率的控制
    数据存储
    是否需要依赖于第三方
    服务降级,熔断和限流
    拆分
    扩展性
    适配性
    幂等
    重复提交
    部署
    缓存穿透、缓存雪崩和缓存击穿
    是否需要白名单
    预加载
    重试
    异步
    服务端推送或者客户端拉取数据
    隔离(例如内网的中台服务,后端服务)
    健康检查,后台大盘监控可视化,故障主动通知




    推荐阅读