AWS noob在这里.这是一个"最佳实践发展问题" - 但我会尝试具体:
我知道我可以在节点与输入JSON文件测试lambda表达式本地,但我不知道该"集成测试"我的web应用程序的最佳途径,这将在S3中运行,并调用lambda表达式响应API网关端点调用.
使用我的实际API网关配置文件来让我在本地调用相同的方法并在本地执行我的Lambdas会很棒.本文认为这是不可能的,但因为没有本地API网关测试环境:http://nickmchardy.com/blog/2015/09/my-thoughts-about-aws-api-gateway-working-with-aws-lambda
也许这还不清楚,例如:如果我在API网关中有一个用户/方法,使用GET和POST,它们分别连接到AWS中的listUsers.js和createUser.js Lambdas; 在开发中我想调用:http:// localhost:0000/users GET/POST并让它运行Lambdas并给出正确的响应,这样我就可以在本地运行我的整个架构.
显然,在调用URL的东西不是特别复杂,所以我的问题是更多:什么是这样做的考虑我将我(的Cloudfront!?!?JAWS)配置这些东西如何在AWS链接在一起的最佳实践,可以我完全利用它进行本地测试?
如果这不清楚或非常明显,请道歉!
我正在尝试将一个域的所有流量重定向到另一个域.我没有专门为此工作运行服务器,而是尝试使用带有lambda的AWS API Gateway来执行重定向.
我对根路径"/"的工作正常,但是没有处理任何子路径请求,例如/ a.有没有办法定义"catch all"资源或通配符路径处理程序?
我想把WAF放在API网关的前面,并且我发现只有通过在APIG面前手动添加启用了WAF的额外Cloudfront发行版才能获得(小)信息.这有点遗憾,特别是因为APIG现在本身支持自定义域,但它应该有效.
现在为了使解决方案安全而不仅仅是模糊,我想强制要求只能通过Cloudfront发行版访问API.这样做的最佳选择是什么?
有更好的想法吗?或者也许"正确的方式"存在,但我忽略了它?
amazon-web-services amazon-cloudfront aws-api-gateway amazon-waf
我已经搜索了整个网络,但没有找到如何使此功能获得成功的解决方案.需要帮助.
我的要求是:如果我触发一个用node.js编写的aws lambda函数并且使用aws-serverless-express模块必须快速将响应发送回API网关但我仍然不应该退出并仍然在后端运行我想要一个可以看到云监视日志.它必须是异步的.
代码段是:
app.get('/check', function(req, res){
method.invoke(req)
res.status(200).send('success')
})
Run Code Online (Sandbox Code Playgroud)
我做了这样的检查,但是lambda函数被停止并返回对api网关的响应,它甚至没有在后端运行method.invoke()函数.
如果我理解或做错了,请纠正我.我查看了此链接:调用AWS Lambda并异步返回API网关响应
这是解决这个问题的唯一方法吗?创建两个lambda函数.
我正在尝试使用带有cognito用户池的aws api网关授权程序.当我使用aws api网关控制台进行测试时,它工作正常.
但是,当我尝试在api中启用授权时,"message": "Unauthorized".请检查下面的屏幕截图
请有人帮忙吗.
仅供参考我遵循这里提到的说明http://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html
似乎无法调用通过CloudFront分配启用AWS_IAM保护的REST API.
以下是如何重现这个:
现在使用经过身份验证的用户(我使用Cognito UserPool用户和aws-amplify)来调用
我得到的错误是:
{"message":"我们计算的请求签名与您提供的签名不匹配.请检查您的AWS秘密访问密钥和签名方法.有关详细信息,请参阅服务文档."}
我无法相信AWS不支持自定义域后面的AWS_IAM受保护端点,因为这必须是一个非常常见的用例.
因此,请您提供一份如何实现这一目标的详细清单?
谢谢
amazon-cloudfront amazon-cognito aws-sdk aws-api-gateway aws-amplify
我希望为通过 API 网关调用的 Lambda 分配一个静态 IP。这是必需的,因为我从此 lambda 调用的下游系统仅接受来自白名单 IP 的 Web 请求。
我通过与我的 lambda 关联的 VPC 成功地实现了这一点。但是 VPC 引入了一个糟糕的冷启动时间,有时范围为 12-16 秒。所以我正在寻找一种方法来防止这种从 VPC 冷启动,但同时为 lambda 分配一个静态 IP。
cold-start amazon-web-services amazon-vpc aws-lambda aws-api-gateway
我正在尝试在我的 aws 项目上启用 CORS,该项目由API Gateway和Lambda功能组成。我正在使用GET和OPTIONS方法创建一个 API 网关。
OPTIONS旨在成为根据 aws文档启用 CORS 的模拟端点。有一个 lambda 函数 ( aws_lambda_function.app_lambda) 由方法调用GET,并且在响应标头中具有:
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Headers": "Content-Type",
"Access-Control-Allow-Methods": "OPTIONS,POST,GET"
Run Code Online (Sandbox Code Playgroud)
但我仍然无法通过 CORS。
resource "aws_api_gateway_rest_api" "rest_api" {
name = "appAPIGateway"
description = "App App App"
}
resource "aws_api_gateway_resource" "rest_api_resource" {
depends_on = ["aws_api_gateway_rest_api.rest_api"]
rest_api_id = "${aws_api_gateway_rest_api.rest_api.id}"
parent_id = "${aws_api_gateway_rest_api.rest_api.root_resource_id}"
path_part = "playground"
}
resource "aws_api_gateway_method" "opt" {
rest_api_id = "${aws_api_gateway_rest_api.rest_api.id}"
resource_id = "${aws_api_gateway_resource.rest_api_resource.id}"
http_method = …Run Code Online (Sandbox Code Playgroud) 我希望使用 REST API 列出我的 AWS API Gateway 实例上可用的 API。我试过:
我对这两个调用使用相同的身份验证凭据。
两者均响应 200 OK。
aws apigateway get-rest-apis返回正确的数据知道为什么 v2 REST API 返回空响应吗?
我一直在网上寻找答案.
基本上,我们使用Swagger来启动一个API,它非常棒并且运行良好,但有一件事不起作用......当我们调用一个端点时,我们得到一个500错误(它不是500错误,我们提供的是AWS的一个.该错误指出"由于配置错误导致执行失败:对Lambda函数的权限无效"(https://youtu.be/H4LM_jw5zzs < - 这是来自其他用户的视频,我收到的错误).
我已经走了很多路,并找到了答案......它涉及使用AWS CLI,看起来有点像这样:
aws lambda add-permission \
--function-name FUNCTION_NAME \
--statement-id STATEMENT_ID \
--action lambda:InvokeFunction \
--principal apigateway.amazonaws.com \
--source-arn "arn:aws:execute-api:us-east-1:ACCOUNT_ID:API_ID/*/METHOD/ENDPOINT"
Run Code Online (Sandbox Code Playgroud)
这很棒,但我们正在使用CloudFormation来启动所有内容,我们希望这是自动化的.有没有更简单的方法来解决这个问题?CloudFormation中是否有某些内容可以为我们提供所需的资源政策?
我正在尝试这个问题,但是我今天已经开始工作了几个小时,这对我们的API版本来说有点阻碍,所以任何帮助都会非常感激.:)
amazon-web-services aws-cloudformation aws-lambda aws-api-gateway
aws-api-gateway ×10
aws-lambda ×4
amazon-vpc ×1
amazon-waf ×1
aws-amplify ×1
aws-cognito ×1
aws-rest-api ×1
aws-sdk ×1
cold-start ×1
cors ×1
node.js ×1
terraform ×1