作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经为我的 AWS API 网关成功实现了一个 Lambda 授权器,但我想将一些自定义属性从它传递到我的 Node.js 端点。
我的授权方的输出遵循 AWS 指定的格式,如下所示。
{
"principalId": "yyyyyyyy",
"policyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Action": "execute-api:Invoke",
"Effect": "Allow|Deny",
"Resource": "arn:aws:execute-api:<regionId>:<accountId>:<appId>/<stage>/<httpVerb>/[<resource>/<httpVerb>/[...]]"
}
]
},
"context": {
"company_id": "123",
...
}
}
context
包含一些参数,如
company_id
,我想传递给我的 Node 端点。
{
"company_id": "$context.authorizer.company_id"
}
company_id
从我的 Lambda 授权方到我的 Node API?
最佳答案
大部分功劳都归功于@Michael-sqlbot 在对我的问题的评论中,但如果其他人发现了这个问题,我会在这里提供完整的答案。
授权方 Lambda
它必须以这种格式返回一个对象,其中上下文包含您要转发到端点的参数,如问题中所指定。
{
"principalId": "yyyyyyyy",
"policyDocument": {
"Version": "2012-10-17",
"Statement": [{
"Action": "execute-api:Invoke",
"Effect": "Allow|Deny",
"Resource": "arn:aws:execute-api:<regionId>:<accountId>:<appId>/<stage>/<httpVerb>/[<resource>/<httpVerb>/[...]]"
}]
},
"context": {
"company_id": "123", <-- The part you want to forward
...
}
}
company_id
company_id
context.authorizer.company_id
关于node.js - 如何将 API Gateway 授权方上下文传递给 HTTP 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45631758/
我是一名优秀的程序员,十分优秀!