轻松部署第三方安全应用:API优先设计与AWS API网关解析
1. API优先设计概述
在构建应用程序时,将大型应用模块化并拆分为不同领域,就如同把一个大馅饼切成小块。API优先设计方法是一种流行的设计原则,用于将微服务暴露给最终用户。
以数字银行应用为例,移动应用需要向用户展示可用余额。后端确定展示余额的过程可能很复杂,要考虑用户的可用信用、待处理交易等,但最终用户只关心自己的余额。API优先设计的目的就是将后端服务与前端解耦。采用这种方法,前端可以通过模拟后端服务的响应来启动开发。
API优先设计的主要目标是向最终用户隐藏应用程序及其安全架构的复杂性。通过该框架,可以制定安全策略,确保应用程序的机密性和可用性。具体来说,API层可以处理速率限制、身份验证、访问控制和防火墙,而后端微服务则处理业务逻辑。
在设计API时,需要时间来建立契约,并且通常需要与利益相关者进行更多的规划和协作。使用模拟后端服务,API优先设计可以在复杂的后端设计或部署之前,向所有利益相关者展示最终应用程序。其目的是确保API满足最终用户的需求。因此,在API优先设计中,可以首先起草契约,利用测试驱动开发(TDD)的原则。
API优先设计要求API端点设计人员首先模拟每个API端点背后的后端服务。这样,可以在前端编写自动化测试,根据消费者可以达成一致的预定义契约来验证API的行为。消费者和接口将就请求和响应对象的数据类型和模式达成一致。
通过缩短反馈周期并通过模拟后端实现引入自动化测试,可以采用迭代方法进行API设计。最终用户可以更快地获得关于实现的反馈。任何与消费者契约的意外偏差都会以自动化测试失败的形式立即凸显出来。
在
超级会员免费看
订阅专栏 解锁全文
944

被折叠的 条评论
为什么被折叠?



