最近呢,在做 api 的设计
对于设计,一方面是对于后端 server 框架的设计,另一方面呢,是对于整个 api 体系的设计
在这里呢,我们来理理思路,先来大致分一下块
风格就不用说了,我们就用 restful
风格,接下来:
IDL,也就是我们所说的接口描述语言
server 框架,整个 api 服务的核心驱动
版本控制
还有一些辅助工具,比如说,自动化工具、认证授权、监控上报、日志记录、检索等等
然后呢,我们就来分别说说设计开发中的一些感触
IDL
顾名思义,IDL 是我们整个 api 体系的核心模型,基本上所有的东西都是要基于我们的 IDL 的,在使用的选择上有很多,比如 Yaml
、Json
、xml
、PB
等等,这些都可以作为接口描述语言,同时呢,各有优劣,在这里呢,我们考虑了以下这几种:
Json:
Json
是一种稳定并得到广泛应用的序列化格式,浏览器包含对该格式的原生解析能力,浏览器内建调试器也能很好地显示这种内容。唯一不足在于要具备 Json 解析器/序列