问题标签 [aws-api-gateway]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5153 浏览

amazon-web-services - 如何将 cognito 用户信息传递给 lambda?

我正在开发基于 API Gateway 和 Lambda 的应用程序。我将 POST /subscribe 配置为“AWS_IAM”。所以现在它无法直接访问,但我可以通过 Cognito 身份验证访问 API。

现在的问题是我的 Lambda 不知道谁是 API 调用者。怎么知道?

我有 2 个用户:“Bob”和“John”。我的 Lambda 需要知道调用者是 Bob 或 John。

谢谢,

0 投票
0 回答
269 浏览

api - 使用 api-keys 监控对 AWS API Gateway 资源的访问

我在我的休息 api 前面建立了一个网关(使用 aws api 网关)。我想使用 api gateway 生成的 api-keys 监控该 api 上资源的使用情况。“使用”是指请求哪些资源并将其提供给与 api 密钥关联的客户端。亚马逊声称 cloudtrail 可用于跟踪网关请求,但 x-api-key 标头不会出现在 cloudtrail 日志中。亚马逊是否提供了一种惯用的方式来做到这一点?有没有人以自定义方式实现此功能?应该内置此功能似乎是合理的,但是我无法在任何地方找到如何执行此操作。

0 投票
4 回答
8598 浏览

http - 如何从 AWS Lambda 函数返回错误集合/对象并映射到 AWS API Gateway 响应代码

我正在尝试从 AWS Lambda 函数返回一个对象,而不是一个简单的字符串。

我已经使用了errorMessage将错误响应映射到状态代码,这很棒:

我只是想做一些 AWS API Gateway 无法承受的事情吗?

我还发现这篇文章有帮助:Is there a way to change the http status codes returned by Amazon API Gateway? .

0 投票
1 回答
1073 浏览

amazon-web-services - 映射模板 API 网关中的有效 Json

我正在使用 AWS API Gateway 和 Lambda,我正在尝试将有效的 Json 对象传递给 Lambda 函数,以避免清理函数中的数据。使用此代码:

将导致将此数据发送到 Lambda 函数:

是否有解决方案将 $input.params 作为有效的 json 字典?

0 投票
3 回答
4557 浏览

node.js - 如何向 Spring Cloud 和 Netflix 的 Eureka 注册 Node 应用

我正在努力使用 Netflix 的 Eureka 注册我的节点应用程序,并且在谷歌搜索了很多之后,我仍在寻找解决方案。我能弄清楚的最大值是我们有Prana,但我遇到了一个问题,它仍然在Prana 的问题列表中(我想这意味着我的 REST 模板无法发现这个应用程序)。

Sidecar是另一个建议的解决方案,对此我没有得到任何回应。除了这两个,我还找到了一个节点模块Eureka-Node-client,但它们都不符合我的目的。

0 投票
0 回答
98 浏览

aws-lambda - AWS Gateway 未对外部调用应用映射

我有一个 AWS 网关端点:mypath/{some_id}.

我有一个客户映射来将该 ID 发送到我的 Lambda 函数,以及发送网关的阶段(开发或产品):

除此之外,我在请求正文上发送了一些自定义数据,比如说{ "some_attr": "some_value" }

我有 2 个独立但相关的问题:

  1. 如果我从外部点击端点(curl例如使用),则不会应用映射,只会{ "some_attr": "some_value" }到达我的 Lambda 函数作为event.
  2. 如果我从网关的仪表板中点击端点(通过使用“测试”选项),则会应用映射但请求正文参数是隐藏的,因此只能{ "some_id": "$input.params('some_id')", "aws_gateway_stage": "$context.stage" }作为事件到达我的 Lambda 函数。

这种行为的原因可能是什么?

0 投票
1 回答
6557 浏览

amazon-cloudwatch - 如何查看外部调用的 AWS Gateway 日志?

我需要能够查看我的通话记录AWS API Gateway。当我从网关的仪表板中执行呼叫时,我可以在该Logs部分下看到它们。

我如何才能看到它们以进行外部呼叫(例如:使用 拨打电话curl)?

我尝试启用 CloudWatch,但我只能看到指标,而不是实际的日志消息。

0 投票
5 回答
52240 浏览

node.js - 如何通过 Amazon API Gateway + Lambda(节点)检索用户的公共 IP 地址

我目前正在编写一个 Node.js lambda 函数,我想在其中记录传入请求者的公共 IP 地址。我整天都在查看 API Gateway 和 Lambda 文档,但没有找到解决方案。

lambdaevent对象是否包含可用于提取用户 IP 的请求元数据?

0 投票
2 回答
1224 浏览

amazon-web-services - AWS API Gateway:无法生成映射模板,因为模型架构缺少“类型”或“$ ref”属性

我收到错误消息:

我已经"type"定义了。

我的模型架构是:

0 投票
2 回答
1970 浏览

amazon-web-services - 到 Kinesis Firehose 的 AWS API Gateway 服务代理

谁能告诉我当前是否可以通过服务代理将 Kinesis Firehose 传输流绑定到 API 网关端点。我尝试使用带有 Firehose PutRecord 操作和新的 PutRecordRequest json 的 Kinesis 服务类型来执行此操作,但网关未能指定它试图将传入请求模型映射到常规 Kinesis PutRecordRequest 模型的错误。