实现API的服务适配器将包含在旧版本与新版本之间进行转换的逻辑,如API Gateway几乎会使用版本化的API
消息的格式
考虑到以后会扩展到其他语言,我们不应该使用类似java序列化这样跟语言强相关的消息格式...原则设计,基本思想是由GET请求返回的资源信息中包含链接,这些链接能够执行该资源允许的操作
最流行的REST IDL是Open API的规范,他是从Swagger开源项目发展而来的。...一个请求中获取多个资源的挑战
REST资源通常以业务对象为导向,设计REST API时常见问题是如何使客户端能够在单个请求中检索多个相关对象。...纯REST API要求客户端发出多个请求,更复杂的情况时需要更多往返并遭受过多延迟,其中一个解决方案是API允许客户端在获取资源时检索相关其他资源,如果情况更复杂耗时,则使用GraphQL和Falcor...,可能导致可用性降低
客户端必须知道服务实例的位置
在单个请求中获取多个资源具有挑战性
有时很难将多个更新操作映射到HTTP动词
使用gRPC
由于HTTP仅提供有限数量的动词,设计支持多个更新操作的REST