Javascript 从中获取客户端请求域Lambda@Edge作用

Javascript 从中获取客户端请求域Lambda@Edge作用,javascript,node.js,aws-lambda,amazon-cloudfront,aws-lambda-edge,Javascript,Node.js,Aws Lambda,Amazon Cloudfront,Aws Lambda Edge,我正在尝试对HTTP 301重定向执行以下操作,以便web用户将重定向到不同的新闻页面 if((request.uri==“/news”)| |(request.uri==”/news/”&&(request.origin.domainName==“sub.mydomain.com”)){ 常量重定向响应={ 状态:“301”, statusDescription:'永久移动', 标题:{ “地点”:[{ 键:'位置', 值:'/local news/', }], “缓存控制”:[{ 键:“缓

我正在尝试对HTTP 301重定向执行以下操作,以便web用户将重定向到不同的新闻页面

if((request.uri==“/news”)| |(request.uri==”/news/”&&(request.origin.domainName==“sub.mydomain.com”)){
常量重定向响应={
状态:“301”,
statusDescription:'永久移动',
标题:{
“地点”:[{
键:'位置',
值:'/local news/',
}],
“缓存控制”:[{
键:“缓存控制”,
值:“最大年龄=3600”
}],
},
};
回调(null,重定向响应);

}
如果要获取分发域名

  const distributionDomain = event.Records[0].cf.config.distributionDomainName;
您可以在中找到更多信息

还有,检查一下

还有,这样试试

'use strict';

exports.handler = (event, context, callback) => {
    const response = event.Records[0].cf.response;
    const request = event.Records[0].cf.request;
    const hostHeader = request.headers['host'][0].value;
    callback(null, response);
};
hostHeader
应该是CNAME(域名)


更多信息

感谢@CyberEternal的回复
distributionDomainName
提供CloudFront分发域。事实上,我想要我的自定义域(CNAME创建到CloudFront地址),用户可以访问该网站。这很酷,而且效果很好。非常感谢你。我想和你核实一下,如果你能帮助我理解,我能做一些类似
https://test.mydomain.com/data/news*
>
https://test.mydomain.com/data/local-news$1
301重定向?我认为您可以检查查看器请求或原始请求的路径参数,并为条件添加逻辑。