接口开发注意事项
1. 接口相关
1.1 接口调用失败时的处理方式
接口调用失败时分为 请求失败和业务失败。
请求失败的相关信息可通过HTTP状态码体现出来,
业务失败的相关信息需要在返回数据中体现出来。
1.2 分页查询
批量查询时需要考虑对结果进行分页。
1.3 超时问题
开发时要考虑接口中是否有耗时操作,根据实际场景评估耗时时间。避免接口调用超时问题。
常见的耗时操作:IO操作。
1.4 参数校验
明确定义各个参数的范围边界,做好校验处理;
基础校验:比如 NULL,空字符串,字符串长短,数值大小等。可用注解校验,或者在controller 层校验;
业务校验,比如传了用户id要检查该用户是否存在,购买的数量是否超库存。具有业务逻辑的参数在 service 层校验;
权限校验,比如有没有权限给用户添加订单。可根据具体场景在 filter 或者其他方式校验;
1.5 interface定义
若某个业务逻辑后续可能会有其他实现方式时,此时需要考虑为这种逻辑操作定义一个通用接口,方便后续功能扩展;
比如需要将文件保存到本地文件系统,后面是否可能需要支持保存到亚马逊,阿里云这些云存储,此时就可以将通用的文件上传,下载,删除功能定义一个接口;
1.6 异常定义
定义异常相关的枚举类,方便后续问题定义和对接工作。
2. 工具类
2.1 工具类中的异常问题
在工具类方法中要么不捕获异常,要么将捕获的异常转为其他形式的异常重新抛出;
在工具类方法中若发生异常,则表明调用工具方法的方法未对某种异常情况未考虑处理,此时应该将异常暴露出来,方便后续进行修改和完善;
如果文章对您有所帮助,可以点一下推荐