问题标签 [amazon-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 投票
3 回答
1005 浏览

amazon-web-services - 调试 AWS HTTP API (beta) JWT Authorizer

我正在试验AWS Api Gateway 的测试版“HTTP API”功能。

作为这个实验的一部分,我正在尝试使用“JWT Authorizer”授权对 api 的访问:

https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html

该文档指出,JWT 在被授权或被拒绝之前,将经过一个工作流程,该工作流程包括对 JWT 的一系列检查/验证。

没有授权者,端点是可访问的。使用授权人,我得到一个带有 json 的 401 响应:

我正在尝试找出授权方拒绝 JWT 的步骤。我已经为 api 端点设置了一个日志,并看到了进来的请求,但它没有提供关于授权失败原因的见解。

有没有办法调试授权人失败的原因/位置?

注意:这不是在谈论 lamda 授权者,我也不是使用 Cognito 来生成 JWT。

0 投票
0 回答
1267 浏览

amazon-web-services - API 网关 - 端点请求随机超时

我有以下流程:

在此处输入图像描述

我的作业 Lambda 调用 API 网关来获取我的作业日志。API 网关由一个主 Lambda 支持,它根据给定的参数调用另外两个 Lambda(读取或写入)。这些读取和写入是在 DynamoDB 表上完成的。该解决方案在过去 2 个月内运行良好,但由于过去一周我观察到异常行为,5XX 和 4xx 错误大幅增加,我也将它们作为主要 'Endpoint request timed out'. 我无法理解是什么突然改变导致这种情况。这种异常行为的根本原因是什么,因为有时它被正确执行,有时却没有。所有 Lambda 都部署在私有子网中。他们所有人的安全组在入站中均不包含任何内容,而出站则包含所有目的地。私有子网包含 NAT 网关。我理解理想情况下我应该为 DynamoDB 和 API Gateway 使用 VPC 端点,但我最初错过了这一点。

0 投票
2 回答
1340 浏览

amazon-web-services - 在 Cloudformation 的 Lambda 定义的 Events 属性中创建 API 端点的 URL 时,如何获取它

我正在通过 CloudFormation(AWS 的 SAM:无服务器应用程序模型)创建一个 Lambda 函数,并通过 Lambda 函数的 Events 属性定义了一个 API 端点。

我现在想使用在 CloudFormation YAML 文件的另一部分中创建的端点的 URL。我尝试使用Lambda 的 SAM 文档,但唯一的返回值与函数的 ARN 和资源名称有关。

具体来说,我认为与确切问题无关,我想将 API 端点用作 SNS 主题的订阅。

¿ 如何获取 API 端点的 URL?

0 投票
1 回答
1086 浏览

amazon-web-services - 在 aws.com 上手动删除后,无服务器 API 网关资源未恢复

我试图删除GET我在 AWS API Gateway 上手动创建的测试资源,但它删除了我POST在同一资源路径中的资源,现在当我sls deploy的 lambda 资源没有返回 API Gateway 的资源列表时:

缺少library/updated POST资源

AWS API Gateway 资源,缺少资源

使用资源的开发阶段的旧部署是什么样的library/updated POST

在此处输入图像描述

sls deploy日志的结果:

我看到:

在这些日志中,也许它只是尝试执行更新操作而不是尝试再次创建资源,因为它认为已经存在。我试过sls deploy --force但结果相同。

0 投票
1 回答
495 浏览

amazon-web-services - 如何在 AWS API Gateway 中自定义 cognito 用户池授权方的 Unauthorized 401 JSON 响应

我在 AWS API Gateway 中添加了Cognito 用户池作为授权方。然后我用 id_token 测试了这个授权器,它工作正常。我使用 lambda 函数通过 Cognito 用户池进行用户注册/登录。

现在我的问题是如何在 id_token 过期或 cognito 授权方无法对当前用户进行身份验证时自定义错误响应。目前我只得到

或者

401响应

0 投票
2 回答
156 浏览

php - 通过 Amazon API Gateway 和网络负载均衡器使用 Nginx 设置 Wordpress 时面临重定向问题

通过 Amazon API Gateway 和网络负载均衡器使用 Nginx 设置 Wordpress 时面临重定向问题。

描述:-
我们有我们的主要网站 xyz.com(由 Amazon API 网关和负载均衡器提供服务),并希望我们的博客出现在 xyz.com/blogs 上。因此,我们设置了 Amazon API 网关和负载均衡器,以将 xyz.com/blogs 的任何请求重定向到包含带有 Nginx 的 Wordpress 的 EC2。

问题:-
我们面临的问题是,主页渲染得很好,但是当我们尝试渲染任何其他页面时,例如:- xyz.com/blogs/my-first-post/xyz.com/blogs/wp -行政然后它卡在那里,没有任何反应。作为我们初始调试的一部分,我们发现 Wordpress 正在重定向到网络负载均衡器 url,(根据我们的猜测)无法访问,我们没有得到任何响应。

这就是我们默认的 nginx conf 的样子(/etc/nginx/conf.d/xyz_blogs.conf),我们从这个链接 => Wordpress|Nginx

我们将如何解决这个问题?
事先感谢您在此提供的任何帮助。

0 投票
1 回答
230 浏览

amazon-web-services - 如何通过 S3 静态网站托管在 API 网关上使用自定义域

我在 API 网关上设置我的域以使用域的 API 调用。

当我用域调用基本 url 时,我得到了 S3 错误而不是 lambda 结果。

谁能澄清是否可以在 API 网关中使用我的域但它已经用于S3 静态网站托管

0 投票
1 回答
108 浏览

amazon-web-services - 无法使用映射模板解析来自 DynamoDB 的 AWS API 响应

我正在使用 AWS DynamoDB 和 ASW API Gateway。我有一个 API 可以从 DB 中获取一些内容,格式如下:

我需要解析为这样的东西:

这是我的响应映射模板代码:

idtitle我可以解析,但不能解析description。请让我知道我做错了什么。

0 投票
3 回答
1682 浏览

amazon-web-services - 使用 Amazon api 网关用 REST API 包装 graphQL(appsync)

我有一个使用 aws appsync 部署的 graphQL 服务器。问题是我们的客户更喜欢标准的 REST API。我正在寻找使用 REST API 包装 graphQL 查询的最简单方法。

我正在考虑使用 Amazon api 网关制作一个 REST 端点,并将 lambda 集成在 api 网关后面。这样,我可以让 lambda 函数发送固定的 graphQL 查询/突变并修改响应。

但是,如下图所示,我在 Amazon API 网关中找到了 AWS 服务集成选项。我想知道是否可以在不使用 lambda 的情况下直接将 appsync 集成到 api 网关。我从 aws 文档中搜索了它,但找不到任何相关信息。

Amazon api 网关设置捕获:

Amazon api 网关设置捕获

  1. 是否可以通过在不使用 lambda 的情况下将 appsync 集成到 api 网关来将 graphQL API 与 REST API 包装起来?就像我从捕获的图像中发现的一样?
  2. 如果是,是否有任何示例或教程?
  3. 如果没有,我应该只集成 lambda 吗?有没有更好的想法或技巧?
0 投票
1 回答
2015 浏览

go - AWS API Gateway 读取:对等错误重置连接

我们已经将一些微服务部署到 AWS kubernetes 集群中。应用架构的高层消息流如下。

客户端应用程序 -> AWS API 网关 -> Istio 代理 -> 微服务

在从客户端应用程序(用 GoLang 编写)进行一些性能测试时,不同微服务的并发负载约为每秒 20 个请求(所有微服务具有相同的主机和不同的路径,如https://aws-api-gateway.com/ service1https://aws-api-gateway.com/service2)我们在客户端应用程序中间歇性地遇到以下错误。

当错误发生时,它会成组发生,就像我们看到大约 10 个请求被“读取:对等连接重置”拒绝。

客户端应用程序具有 MaxIdleConns=100 和 MaxConnsPerHost=100 的 http 连接池

我们已经确认端点没有任何速率限制设置(如果超过速率限制,错误将是http响应代码)

此错误的可能根本原因是什么。