当前位置: 首页 > 知识库问答 >
问题:

AWS API 网关集成请求设置自动化

司空海荣
2023-03-14

我正在尝试使用 AWS API 网关 Swagger 将请求路由到我的快速后端。我不知道如何自动设置集成请求,因为 Swagger 文件没有详细信息。

在将我的方法请求设置为集成类型上的GET/VPC链接时,我也很难使用endpointurl参数

例如:

我的api网关路径是 /info/car/{model}/聚合

现在endpointurl是http://carapi.com/info/car/{model}/aggregate

我有很多网关路径,所有这些路径都与我的carapi.com站点使用的路径相同,所以我不想一遍又一遍地重新键入路径。输入endpointurl时,我可以通过使用将endpointurl转换为的阶段变量来简化不必键入carapi.com的过程

http://$ { stage variables . carapi }/info/car/{ model }/aggregate

然而在阅读了https://docs . AWS . Amazon . com/API gateway/latest/developer guide/API-gateway-mapping-template-reference . html # stage variables-template-reference

我看到也有一个$context可用,但当我尝试在postman中调用api时,它会给我一个错误(当我尝试实现上下文时,消息会显示“内部服务器错误”)(通过该链接显示我可以实现路径)。

http://${stageVariables.carApi}/${context.resourcePath}

所以我的问题是:如何自动设置集成请求,这样我就不必手动设置每个请求(因为我有数百个路径)?是否也不必手动设置endpoint的路径?

共有1个答案

韦宏扬
2023-03-14

我不知道有什么解决方案可以随时使用。

在我的项目中,我们编写了一个定制的解决方案,下载应用程序Swagger json,解析它,添加所需的集成并生成另一个json文件。然后我们将它导入API Gateway。这已转换为Jenkins作业,并作为微服务部署的后期作业运行。

另一种方法是,不生成json,而是直接调用API Gateway APIs并添加集成。

 类似资料:
  • 我们正在尝试从C#Windows服务调用AWS API网关来执行后台作业。哪个应该触发API网关定期初始化请求? 我们使用RestSharp调用APIendpoint,该类称为AwsAuthenticator,它继承自RestSharp.Authenticators.IAAuthenticator。但当我们调用API Gateway时,收到的错误是“我们计算的请求签名与您提供的签名不匹配。请检查您

  • 当我发送一个带有POST请求的正文时,我的模板映射似乎被有效负载覆盖了。 我有一个调用Lambda函数的API网关资源。Lambda函数很简单,它只是回显它接收到的内容。 这个名为echo的Lambda函数通过POST调用Lambda函数。POST方法有一个集成请求映射模板(直接来自文档): 当我在没有尸体的情况下提出请求时,我会得到我期望的答复: 但是,当我用主体发出请求时,模板映射不再工作:

  • 6.6.2 URDF集成Gazebo相关设置 较之于 rviz,gazebo在集成 URDF 时,需要做些许修改,比如:必须添加 collision 碰撞属性相关参数、必须添加 inertial 惯性矩阵相关参数,另外,如果直接移植 Rviz 中机器人的颜色设置是没有显示的,颜色设置也必须做相应的变更。 1.collision 如果机器人link是标准的几何体形状,和link的 visual 属性

  • 我试图实现某种代理作为我的数据流的一部分,我想在我的入站网关上接收超文本传输协议请求,并通过出站网关传递它。我想保留所有查询字符串参数。我的网关配置是: 我预计它的工作如下: > GET/services/normalization q=cat 入站网关接收请求,并将其通过搜索请求通道发送到出站网关。 出站网关向外部服务发送整个请求: 获取/查询q=cat 但实际上,出站网关发送不包含任何查询参数

  • 我想通过无服务器设置API网关的Request Validator。我尝试了两种不同的Request Validator设置。但是,两种方法都失败了。我已经总结了我所做的,所以如果有问题请告诉我。 我用swagger(OAS3.0)编写了API规范。因此,我尝试使用OAS扩展实现Request Validator的设置。在我使用下面的和部署了