使用 cloudformation 向 api 添加参数
Adding parameters to api using cloudformation
我尝试了在这里找到的 cloudformation 模板...
https://bl.ocks.org/magnetikonline/c314952045eee8e8375b82bc7ec68e88
它按预期工作。但我想为 post 请求提供参数。我的 Curl 命令应该看起来像这样...
curl -d "mynumber=12345" -X POST https://tyin2sswj2.execute-api.us-east-1.amazonaws.com/mycall
如何在 cloudformation 模板中的 API 网关处理它?我已经在 lambda 函数级别设置了环境变量。
无效的模板是这个...
https://raw.githubusercontent.com/shantanuo/cloudformation/master/updated/lambda_api.tpl.txt
显然我无法通过网关传递 "mnumber" 变量。
我已经更新了我的模板,现在它可以正确部署功能和网关。而且生成的 URL 仍然不起作用并显示 "internal server error" 消息。
https://raw.githubusercontent.com/shantanuo/cloudformation/master/testapi.tpl.txt
您应该改为使用 HTTP 代理集成。
以下是来自 AWS 的一些关于代理集成的信息:https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-http-integrations.html
尝试更改您的 RequestParameters 来自:
RequestParameters:
method.request.querystring.mnumber: false
到
RequestParameters:
method.request.path.proxy: true
并正在整合来自:
RequestParameters:
integration.request.querystring.mnumber: "method.request.querystring.mnumber"
至
RequestParameters:
integration.request.path.proxy: 'method.request.path.proxy'
这是一个关于代理与 API 网关集成的好教程:
https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-api-as-simple-proxy-for-http.html
我尝试了在这里找到的 cloudformation 模板... https://bl.ocks.org/magnetikonline/c314952045eee8e8375b82bc7ec68e88
它按预期工作。但我想为 post 请求提供参数。我的 Curl 命令应该看起来像这样...
curl -d "mynumber=12345" -X POST https://tyin2sswj2.execute-api.us-east-1.amazonaws.com/mycall
如何在 cloudformation 模板中的 API 网关处理它?我已经在 lambda 函数级别设置了环境变量。
无效的模板是这个...
https://raw.githubusercontent.com/shantanuo/cloudformation/master/updated/lambda_api.tpl.txt
显然我无法通过网关传递 "mnumber" 变量。
我已经更新了我的模板,现在它可以正确部署功能和网关。而且生成的 URL 仍然不起作用并显示 "internal server error" 消息。
https://raw.githubusercontent.com/shantanuo/cloudformation/master/testapi.tpl.txt
您应该改为使用 HTTP 代理集成。 以下是来自 AWS 的一些关于代理集成的信息:https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-http-integrations.html
尝试更改您的 RequestParameters 来自:
RequestParameters:
method.request.querystring.mnumber: false
到
RequestParameters:
method.request.path.proxy: true
并正在整合来自:
RequestParameters:
integration.request.querystring.mnumber: "method.request.querystring.mnumber"
至
RequestParameters:
integration.request.path.proxy: 'method.request.path.proxy'
这是一个关于代理与 API 网关集成的好教程: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-api-as-simple-proxy-for-http.html