gpt4 book ai didi

node.js - 如何访问 AWS Lambda 中的 header ?

转载 作者:搜寻专家 更新时间:2023-10-31 22:37:16 25 4
gpt4 key购买 nike

我正在使用 AWS Api 网关。我使用 API 网关创建了资源和方法。

我已经创建了 Lambda 函数,用于生成 json 格式的签名 URL,以通过 CloudFront 访问 s3 存储桶。

当我使用 GET 方法调用 lambda 函数时。我将“channekID”作为查询字符串传递。我还想发送 X-API-Key 自定义 header 以进行授权。

我尝试了很多东西,但没有找到任何解决方案。如何在 Lambda 函数中发送自定义 header ?在 Lambda 中访问 header 值之后如何使用 x-api-key 授权?

最佳答案

您无法使用 Lambda 访问 header 。但您可以做的是在 Api 网关中创建一个映射模板,将 header 值放入事件对象中。

header 应该在可以在映射模板中使用的$input.params(x) 变量中。查看full documentation如何准确地整合这一点。

更新:在您的映射模板中(在 api 网关下 -> 您的端点 -> 集成请求),添加如下内容:

#set($inputRoot = $input.path('$'))
{
"apikey" : "$input.params('X-Api-Key')"
}

现在您可以在 event.apikey 下的 lambda 函数中访问 api key (我没有对此进行测试,但我们在生产中使用了类似的东西)。请注意,您可以对所有 header 变量以及正文中的变量执行此操作。

关于node.js - 如何访问 AWS Lambda 中的 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34286197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com