来自云端的动态内容 - 我可以从 Rails 中放置 API 结果 (JSON) 吗?
Posted
技术标签:
【中文标题】来自云端的动态内容 - 我可以从 Rails 中放置 API 结果 (JSON) 吗?【英文标题】:Dynamic content from cloudfront - can I put API results (JSON) from Rails? 【发布时间】:2012-10-20 18:03:54 【问题描述】:我看到 CloudFront 支持动态内容。
谁能指导我如何在 Rails 中执行此操作?例如,我有 api.test.com/popular.json,我希望最好从 CloudFront 提供它,但可能每隔几个小时更新一次。
对于静态资产,我已经能够使用 Rails 的资产主机设置来做到这一点。但是我还没有找到足够多的动态内容指南。任何指针都会很有用。
【问题讨论】:
【参考方案1】:您无需将您的 rails 应用程序与 CloudFront 集成。相反,您可以设置 CloudFront 来缓存您的网站:
-
转到 AWS 控制台并添加新的 CloudFront 分配
网络交付方式
来源域名:
myexistingdomain.com
您可以保留所有默认值。可以设置最小/默认/最大 TTL 选项以强制执行特定的缓存时间,这可能是必要的,具体取决于您的服务器设置。
-
在
myexistingdomain.com
,您必须设置Access-Control-Allow-Origin
header 以包含您的Cloudfront 分配的域名。
您可能已经体验过,CloudFront 上的大多数更新或添加源通常需要大约 20 分钟,因此请耐心等待。
此外,如果您需要在您的 rails 应用程序中使用查询参数、cookie 或特殊标头,则必须将它们包含在您的 CloudFront 分配的缓存设置中。请注意,这会降低分发的效率。
【讨论】:
以上是关于来自云端的动态内容 - 我可以从 Rails 中放置 API 结果 (JSON) 吗?的主要内容,如果未能解决你的问题,请参考以下文章