将安全性 http headers 添加到 aws lambda 函数
adding security http headers to aws lambda function
我们有一个简单的应用程序结构,我们的 ReactJs front-end 向 api 网关发出请求,后者使用 lambda 函数执行 proxy-integration。由于我们的 api 网关在没有任何修改的情况下传递请求,并且在向客户返回响应时执行相同的操作,因此我们要添加 http 安全性 headers 的地方将在 lambda 函数本身中。我已经对如何实现它做了一些研究,但我在 Google 中搜索的所有答案都提到 lambda@Edge+Cloudfront 类似于 this post 我们根本不使用它,这是否意味着我们有通过添加这两个东西来改变我们的结构?谢谢
您引用的文章假定后端是静态的(例如 S3)并且无法设置 headers。这就是使用 Lambda@Edge 的原因。
听起来您当前的设置无需任何更改就可以正常工作...您是否尝试在代码中添加 headers?
我的代码非常适合 APIGW + Lambda(代理集成)组合。
exports.handler = async function (event) {
var response = {
statusCode: 200,
headers: {
'Content-Type': 'application/json; charset=utf-8',
'X-My-Header': 'whatever'
},
body: JSON.stringify({status: 'OK'}),
}
return response
}
我们有一个简单的应用程序结构,我们的 ReactJs front-end 向 api 网关发出请求,后者使用 lambda 函数执行 proxy-integration。由于我们的 api 网关在没有任何修改的情况下传递请求,并且在向客户返回响应时执行相同的操作,因此我们要添加 http 安全性 headers 的地方将在 lambda 函数本身中。我已经对如何实现它做了一些研究,但我在 Google 中搜索的所有答案都提到 lambda@Edge+Cloudfront 类似于 this post 我们根本不使用它,这是否意味着我们有通过添加这两个东西来改变我们的结构?谢谢
您引用的文章假定后端是静态的(例如 S3)并且无法设置 headers。这就是使用 Lambda@Edge 的原因。
听起来您当前的设置无需任何更改就可以正常工作...您是否尝试在代码中添加 headers?
我的代码非常适合 APIGW + Lambda(代理集成)组合。
exports.handler = async function (event) {
var response = {
statusCode: 200,
headers: {
'Content-Type': 'application/json; charset=utf-8',
'X-My-Header': 'whatever'
},
body: JSON.stringify({status: 'OK'}),
}
return response
}