问题标签 [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 投票
12 回答
88456 浏览

amazon-web-services - 有没有办法更改 Amazon API Gateway 返回的 http 状态代码?

例如,如果我想为无效参数返回特定的 400 错误,或者当 lambda 函数调用导致创建时返回 201。

我想要不同的 http 状态代码,但看起来 api 网关总是返回 200 状态代码,即使 lambda 函数返回错误也是如此。

0 投票
22 回答
353592 浏览

amazon-web-services - 如何将查询字符串或路由参数从 Amazon API Gateway 传递到 AWS Lambda

例如,如果我们想使用

GET /user?name=bob

或者

GET /user/bob

您如何将这两个示例作为参数传递给 Lambda 函数?

我在文档中看到了有关设置“映射自”的内容,但在 API Gateway 控制台中找不到该设置。

  • method.request.path.parameter-nameparameter-name对于在“方法请求”页面中定义的路径参数。
  • method.request.querystring.parameter-nameparameter-name对于在“方法请求”页面中定义的查询字符串参数。

即使我定义了查询字符串,我也看不到这些选项中的任何一个。

0 投票
2 回答
1622 浏览

amazon-web-services - AWS Lambda:如何设置错误类型?

我想从我的 lambda 函数发回自定义错误类型。如何控制 errorType 属性中显示的内容,以便将错误返回到我的 api 网关?

返回

我想对其进行操作,以便响应中的 errorType 可以类似于"InvalidParam".

0 投票
2 回答
1606 浏览

amazon-web-services - 如何在 aws api 网关中正确使用集成响应映射来返回不同的 http 代码

我似乎无法使用 amazon api 网关为错误设置集成响应

在此处输入图像描述

我添加了一个集成响应,但它不返回 400 错误,而是继续返回 200 响应

0 投票
7 回答
37798 浏览

amazon-web-services - 如何使用 Lambda 访问 HTTP 标头以请求 AWS API Gateway?

我在API Gateway 常见问题解答中看到可以访问发送到 API Gateway 的请求标头...

如果您已经使用 OAuth 令牌或任何其他授权机制,您可以轻松设置 API Gateway 不需要签名的 API 调用,只需将令牌标头转发到您的后端进行验证。

但是,我在文档中找不到如何执行此操作的示例,也不清楚如何使用 Lambda 访问这些数据。

我能够设置一个开放的 API 并获得对作为 POST 一部分的 JSON 对象的访问权(演练:API 网关和 Lambda 函数),但是为了使用我自己的提供程序实现 OAuth 2.0 风格的 API,我需要访问“授权”标头。

我的偏好是使用 Lambda 和 Java 8 进行设置,但使用 node.js 的示例也有助于理解如何完成此操作。

0 投票
1 回答
1621 浏览

javascript - AWS API Gateway 未检测到 Angular $resource POST 请求查询参数?

我正在测试 AWS 的 API Gateway,但我无法让它读取来自 Angular 的 POST 请求中包含的查询字符串参数。

但是,当我使用 cURL 时,AWS 的 API 网关会检测到查询字符串参数,所以这一定是 Angular 问题。我是否缺少标题或其他内容?

仅供参考,我已经在 API Gateway 上正确设置了模板映射,所以这不是问题。

0 投票
0 回答
839 浏览

apache - AWS API Gateway 301 重定向阻止客户端证书的 Apache ProxyPass

我们有一个接受客户端证书作为身份验证手段的服务器。该服务随后运行 Apache,然后终止 SSL 并将ProxyPass请求发送到我们的 API Gateway 端点。

我们注意到 API 网关会执行 301 重定向,因此我们的客户端证书信息不会传递到 AWS Lambda 能够访问的端点。

有谁知道这是否有解决方法?

更新 1

似乎 301 重定向是由 API Gateway 将我们重定向到 HTTPS 引起的。现在的问题是,如果我们使用 https 协议,似乎会返回 500 错误?

更新 2

SSLProxyEngine On如果我们也启用并检查 Apache ,我们似乎会error_log看到以下一些错误:

0 投票
2 回答
2074 浏览

amazon-web-services - Can you statically set a Header and it's value when setting up an HTTP Proxy using AWS Api Gateway endpoint?

I am creating an http proxy using AWS Api Gateway. I would like to hard code some of the headers and their values to be forwarded as part of the request. I thought this might be possible in the 'Integration Request' portion of the proxy setup, but I can't seem to figure it out.

I'm trying to pass an Authorization header with an oauth key. I don't want to share this key with clients that have access to this service, since I will only provide a subset of access to users of this specific endpoint.

0 投票
3 回答
9619 浏览

amazon-web-services - 通过 AWS API Gateway 返回图像

我正在尝试使用 AWS API Gateway 作为图像服务前的代理。我能够让图像通过,但它显示为一大块 ASCII,因为 Content-Type 设置为“application/json”。

有没有办法告诉网关根本不要更改源内容类型?

我只想通过“image/jpeg”、“image/png”等。

0 投票
3 回答
43568 浏览

ios - 如何将文件上传到 lambda 函数或 API 网关?

我正在尝试将文件从 iOS 上传到 AWS API Gateway 并将其传递给 Lambda 函数,我该如何实现这个场景?

我可以使用multipart/form-data上传到 AWS API Gateway 但如何使输入模型支持二进制数据?

[Edit1] 从 Spektre 的回答中移出

感谢您的回复,经过一番阅读,我发现无法将文件上传到 lambda(这不合逻辑,因为它是基于事件的),并且是上传到 S3 并使 S3 通知 lambda 的唯一有效用例。