
企业系统之间的数据交换越来越频繁,API已经成为系统集成的核心。一个设计良好的API能让开发效率翻倍,反之则是维护噩梦。
命名规范。用名词而不是动词,比如/users而不是/getUser。版本号放在URL路径里,比如/v1/users。资源层级不要超过3层。
请求响应统一。返回格式包含code、message、data三个字段,错误码统一规范。分页参数统一用page和page_size。
认证授权。用OAuth2.0或JWT做认证,不要在URL里传token。权限粒度到接口级,普通用户不能调用管理接口。
限流熔断。防止某个接口被恶意刷调用,或者下游服务挂掉导致雪崩。用令牌桶算法做限流,Hystrix做熔断降级。
文档和测试。每个接口必须有文档,用Swagger或Apifox自动生成。开发完写自动化测试用例,CI/CD流水线里跑回归测试。
版本兼容。API升级时保证向后兼容,老版本至少维护半年,给调用方充分迁移时间。