使用 Lambda@Edge 的方法 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 Lambda@Edge 的方法

在 Amazon CloudFront 分配中,Lambda@Edge 处理有很多用途。例如:

  • Lambda 函数可检查 Cookie 并重写 URL,以便用户可看到不同版本的站点以进行 A/B 测试。

  • CloudFront 可通过检查 User-Agent 标头来基于查看器使用的设备将不同的对象返回到查看器,该标头包含有关这些设备的信息。例如,CloudFront 可基于不同图像所在的设备的屏幕尺寸返回这些图像。同样,函数可考虑 Referer 标头的值,并使 CloudFront 将图像返回到具有最低的可用分辨率的自动程序。

  • 或者,您也可以检查 Cookie 中是否有其他条件。例如,在出售服装的零售网站上,如果您使用 Cookie 来指示用户选择了哪种颜色的夹克,Lambda 函数可更改相应请求,以便 CloudFront 返回选定颜色的夹克的图像。

  • 在发生 CloudFront 查看器请求或源请求事件时,Lambda 函数可生成 HTTP 响应。

  • 函数可检查标头或授权令牌,并在 CloudFront 将请求转发到您的源之前插入一个标头,以控制对您的内容的访问。

  • Lambda 函数还可以向外部资源发出网络调用,以确认用户凭证,或获取更多内容来自定义响应。

有关更多用途(包括代码示例),请参阅 Lambda@Edge 函数示例

有关向您展示如何在控制台中设置 Lambda@Edge 的过程,请参阅教程:创建基本 Lambda@Edge 函数