Note/开发完接口之后自查.md

1.7 KiB
Raw Blame History

开发完接口之后:

入参校验:长度校验、判空、逻辑校验

分页处理:是否实现分页功能

逻辑删除:避免物理删除,使用逻辑删除

查询加缓存:提高查询效率,减少数据库压力

逻辑漏洞:检查逻辑是否存在漏洞

重点接口加验签:防止流量劫持和数据篡改

异常情况提示语:清晰明确的异常提示信息

外部接口错误处理:是否需要重试还是直接返回错误,对方是否有幂等性

接口访问量:评估接口的访问量

中间件压力:考虑中间件的负载能力

时间复杂度优化时间复杂度例如map的查找操作为O(1)

代码细化每个操作步骤细化明确思考每个方法是否可以控制在10行以内抽取通用代码便于维护

Redis数据结构选择合理选择Redis数据结构

设计模式:是否考虑设计模式

外部接口调用日志:记录入参、返回值,尤其是不满足预期和报错的时候

国际通用返回值code, msg, data, extMap, requestId

@Value默认值@Value = "$(aaa:defaultValue)",带一个默认值,增强健壮性

参数配置文件化:所有参数放入配置文件,便于将来动态刷新

临界值测试:调用方获取的永远是baseResponse不能把Java异常返回出去业务代码明确见名知意

日志记录:多打日志,入口、出口,尤其是调用第三方接口时,记录入参、出参

全局意识:在项目开发中,即使自己只是整个流程的一部分,也要有全局意识,替对方着想,这样开发起来更加顺畅