我正在尝试创建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',并在下次从缓存中获取资源?
由于
答案 0 :(得分:0)
回答了我自己的问题。
在cURL中 - 我们应该插入HTTP请求的日期:
curl -z 'Sun, 06 Nov 2024 08:49:37 GMT' -k -I -X GET URL_PATH
这就是我在'陈旧'时能看到的?方法返回true或不返回。
另外 - 如果“陈旧”,控制器不应该返回任何消息?返回False。