在 API Gateway 中设置阶段 » 为 REST API 部署设置阶段变量Stage variables

阶段变量Stage variables是您可以定义为与 REST API 部署阶段关联的配置属性的名称-值对。它们与环境变量的功能类似,可用于 API 设置和映射模板。

使用 API Gateway 中的部署阶段,您可以管理各 API 的多个发布阶段,例如内部测试、测试和生产。通过阶段变量,您可以将 API 部署阶段配置为与不同的后端终端节点交互。例如,您的 API 可以将 GET 请求作为 HTTP 代理传递给后端 Web 主机 (例如 http://example.com)。在这种情况下,后端 Web 主机将在阶段变量中配置,这样一来,当开发人员调用生产终端节点时,API Gateway 将调用 example.com。当您调用测试终端节点时,API Gateway 将使用在测试阶段的阶段变量中配置的值,并调用不同的 Web 主机(例如 beta.example.com)。同样,阶段变量可用于为 API 中的每个阶段指定不同的 AWS Lambda 函数名称。

您还可以使用阶段变量,通过映射模板将配置参数传递给 Lambda 函数。例如,您可能需要针对 API 中的多个阶段重复使用同一个 Lambda 函数,但是该函数应根据调用的阶段,从不同的 Amazon DynamoDB 表中读取数据。在为 Lambda 函数生成请求的映射模板中,您可以使用阶段变量来将表的名称传递给 Lambda。

阶段变量不应用于 API 规范的安全定义部分。例如,您无法将不同的 Amazon Cognito 用户池用于不同阶段。

示例

要使用阶段变量自定义 HTTP 集成终端节点,您必须首先配置具有指定名称的阶段变量(例如 url),然后为其分配一个值(例如 example.com)。下一步,在您的方法配置中设置 HTTP 代理集成,然后让 API Gateway 使用阶段变量值 http://${stageVariables.url},而不是输入终端节点的 URL。此值将指示 API Gateway 在运行时替换您的阶段变量 ${},具体取决于 API 正在哪个阶段运行。您可以通过与在凭证字段中指定 Lambda 函数名称、AWS 服务代理路径或 AWS 角色 ARN 类似的方式引用阶段变量。

原文地址:https://www.cnblogs.com/cloudrivers/p/11451625.html

时间: 2024-10-05 12:11:01

在 API Gateway 中设置阶段 » 为 REST API 部署设置阶段变量Stage variables的相关文章

API Gateway 中控制和管理对 REST API 的访问

您可以使用以下机制进行身份验证和授权: 资源策略允许您创建基于资源的策略,以允许或拒绝从指定的源 IP 地址或 VPC 终端节点访问您的 API 和方法.有关更多信息,请参阅 使用 Amazon API Gateway 资源策略控制对 API 的访问. 标准 AWS IAM 角色和策略 提供灵活.稳健的访问控制,可应用于整个 API 或单个方法.IAM 角色和策略可用于控制谁可以创建和管理您的 API 以及谁可以调用它们.有关更多信息,请参阅使用 IAM 许可控制对 API 的访问. IAM 标

gRPC helloworld service, RESTful JSON API gateway and swagger UI

概述 本篇博文完整讲述了如果通过 protocol buffers 定义并启动一个 gRPC 服务,然后在 gRPC 服务上提供一个 RESTful JSON API 的反向代理 gateway,最后通过 swagger ui 来提供 RESTful JSON API 的说明,完整代码 helloworld_restful_swagger. Helloworld gRPC Service 参考 gRPC Quick Start for Python. Install gRPC 安装 gRPC 运

[转载] 构建微服务:使用API Gateway

原文: http://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=206889381&idx=1&sn=478ccb35294c58d25d2df2d9ced65cf7&scene=1&key=c76941211a49ab586d79043cb87ac0dfeede574a20b2208ce76058b151624e4273182de582a786668ea347c6f317b389&ascene=0&

微服务实战(二):使用API Gateway

[编者的话]本系列的第一篇介绍了微服务架构模式.它讨论了采用微服务的优点和缺点,除了一些复杂的微服务,这种模式还是复杂应用的理想选择. 当你决定将应用作为一组微服务时,需要决定应用客户端如何与微服务交互.在单体式程序中,通常只有一组冗余的或者负载均衡的服务提供点.在微服务架构中,每一个微服务暴露一组细粒度的服务提供点.在本篇文章中,我们来看它如何影响客户端到服务端通信,同时提出一种API Gateway的方法. 介绍 假定你正在为在线购物应用开发一个原生手机客户端.你需要实现一个产品最终页来展示

python中关于本地文件的API

Python中关于本地文件的API */--> Python中关于本地文件的API #TITLE: python中关于本地文件的API #KEYWORDS: Python,文件,路径 #DATE: Fri Jul 1 21:24:04 2016 在Python中,文件操作主要来自os模块,主要方法如下: 函数 描述 os.listdir(dirname) 列出dirname下的目录和文件 os.getcwd() 获得当前工作目录 os.curdir 返回当前目录('.') os.chdir(di

Using HAProxy as an API Gateway, Part 2 [Authentication]

转自:https://www.haproxy.com/blog/using-haproxy-as-an-api-gateway-part-2-authentication/ HAProxy is a powerful API gateway due to its ability to provide load balancing, rate limiting, observability and other features to your service endpoints. It also

android框架Java API接口总注释/**@hide*/和internal API

Android有两种类型的API是不能经由SDK访问的 l 第一种是位于com.android.internal包中的API我,位于frameworks/base/core/java/com/android/internal/.我将称之为internal API. l 第二种API类型是一系列被标记为@hide属性的类和方法.从严格意义上来讲,这不是一个单一的API和类,而是一些的被隐藏的API和类,称之为hidden API Internal和hidden API的区别 Hidden API之

谈谈微服务中的 API 网关(API Gateway)

转载至:http://www.cnblogs.com/savorboard/p/api-gateway.html 背景 我们知道在微服务架构风格中,一个大应用被拆分成为了多个小的服务系统提供出来,这些小的系统他们可以自成体系,也就是说这些小系统可以拥有自己的数据库,框架甚至语言等,这些小系统通常以提供 Rest Api 风格的接口来被 H5, Android, IOS 以及第三方应用程序调用. 但是在UI上进行展示的时候,我们通常需要在一个界面上展示很多数据,这些数据可能来自于不同的微服务中,举

API Gateway Stage variables

Stage variables are name-value pairs that you can define as configuration attributes associated with a deployment stage of a REST API. They act like environment variables and can be used in your API setup and mapping templates. For example, you can d