rails 4 - 使用带有redirect_to的缓存

时间:2015-10-18 06:36:02

标签: ruby-on-rails-4 caching

我正在尝试创建GET网址,该网址返回位于' public'文件夹,我尝试使用缓存,以便在不需要时将重定向保存到资源。 我有一个表:' ResourcesTable',它存储资源被修改的最后时间。

我所请求的URL的路由导航到执行的控制器:

def handle_resource
    resource_path = params(:resource)
    last_updated_at = ResourcesTable.get_resource_timestamp(resource_path)
    if stale?(:last_modified => last_updated_at.utc) then
        redirect_to resource_path

问题是,它总是进入' redirect_to'。 我已经使用cURL进行了检查,标头中的last_modify元素与' last_updated_at'相同。从DB返回。

是否有人可以帮助确保它只会执行一次' redirect_to',并在下次从缓存中获取资源?

由于

1 个答案:

答案 0 :(得分:0)

回答了我自己的问题。

在cURL中 - 我们应该插入HTTP请求的日期:

 curl -z 'Sun, 06 Nov 2024 08:49:37 GMT' -k -I -X GET URL_PATH 

这就是我在'陈旧'时能看到的?方法返回true或不返回。

另外 - 如果“陈旧”,控制器不应该返回任何消息?返回False。