我的目标如下:
- 具有REST端点:/api/v1/{ID}
- 我的lambda应该能够访问{ID}并执行逻辑
现在我的api网关看起来像:
- /
- /api
- /v1
- /-id-
- 得到
- /-id-
- /v1
- /api
我添加了一个"映射模板":
{"id":"$input.params('id')"}
当我在浏览器"https://api/v1/-id-"中输入url时,我得到:
{ id: "" }
当我输入"https……/dev/api/1234"时,我得到:
{ "message": "Missing Authentication Token" }
我没有为url设置任何类型的身份验证。。。
我的lambda代码:
console.log('Loading function');
exports.handler = function(event, context) {
var query = require('querystring').parse(event.querystring)
console.log("the query ==> ", query);
console.log('Received event:', JSON.stringify(event, null, 2));
console.log("the context ==> ", context)
context.succeed(event);
};
当我在浏览器上输入url时,我缺少了什么可以返回"id"?
我还运行了一些针对url的get请求的java代码,每当我将"-id-"设置为某个字符串/数字时,就会得到403。。。
阅读文档!!!!
http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-mappings.html
资源名称:任何真正的
资源路径:如果您想使用类似"/api/v1/PARAM_VALUE"的url,则THIS需要为{PARAM_NAME}