有没有办法使用报头中的数据从CloudFront重定向到apigateway [英] Is there a way to redirect from cloudfront to apigateway using data in headers
本文介绍了有没有办法使用报头中的数据从CloudFront重定向到apigateway的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我们正在AWS apigateway上设置API。想法是URL的格式是"Example.com/apiname/Path",阶段(版本)是html头文件。如何根据URL格式使用Route53和/或CloudFront将用户重定向到特定的API和Stage
作为触发lambda的事件,我们尝试了全部4种(观众请求/响应、源请求/响应)。每次响应都是502或503。我们尝试使用默认的lambda Hello world代码,也尝试仅返回{‘Status’:200},但响应相同(503)
def lambda_handler(event, context):
print('In lambda')
return {
'statusCode': 200,
'body': json.dumps('Hello from Lambda!')
}
CloudWatch中没有日志,lambda中的监视图也没有日志,因此我假设lambda中的代码从未执行过
推荐答案
我这周实际上一直在做同样的事情,到目前为止就是这样(对不起,它在node.js中,但您可能可以转换它)
exports.handler = async (event, context) => {
const response = {
status: '301',
statusDescription: 'Found',
headers: {
location: [{
key: 'Location',
value: "{URL_TO_REDIRECT_TO}",
}],
},
};
return response
}
它将返回301重定向到您指定的任何URL,该URL可以是您的API网关
这篇关于有没有办法使用报头中的数据从CloudFront重定向到apigateway的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文