如何设计出优美的Web API?
1. 概述 WEB API的应用场景非常丰富,例如:将已有系统的功能或数据开放给合作伙伴或生态圈;对外发布可嵌入到其他网页的微件;构建前后端分离的WEB应用;开发跨不同终端的移动应用;集成公司内部不同系统等等。在上述场景里,你可能是WEB API的使用者,也可能是设计者,但你知道如何评判WEB API的优劣吗? 2. 评判标准 我们可以从三个维度来评判一个WEB API的优劣: 易于使用:WEB API的用户是程序还是人?我觉得首先是人,然后是程序。为什么这么说呢?是否采用某个WEB API的决定是人做出的,一个好的WEB API必须符合人的审美,例如:简短易记、通俗易懂、便于输入等。从程序角度看,WEB API应该遵循行业规范,在调用时不需要做特殊化处理,有利于复用已有的代码或工具。 便于更改:一个WEB API发布上线之后,免不了要根据真实用户的反馈或者业务发展的需要做更新修改,这些更新修改必须尽量不影响用户。要么提供多版本支持,要么给用户提供切实可行的更新策略等等。 健壮稳定:对外公开的WEB API存在被***的风险,以及无法准确预估的访问量等,一个好的WEB API必须要有防注入、防篡改、防重放等安全机制,还要在访问量急剧上涨时避免服务被击穿。 做到了上述三个方面,我们才有底气将一个WEB API对外开放,接受公众的检验。好的WEB API不仅方便使用