# File lib/action_dispatch/http/cache.rb, line 25 25: def etag_matches?(etag) 26: if_none_match && if_none_match == etag 27: end
Check response freshness (Last-Modified and ETag) against request If-Modified-Since and If-None-Match conditions. If both headers are supplied, both must match, or the request is not considered fresh.
# File lib/action_dispatch/http/cache.rb, line 32 32: def fresh?(response) 33: last_modified = if_modified_since 34: etag = if_none_match 35: 36: return false unless last_modified || etag 37: 38: success = true 39: success &&= not_modified?(response.last_modified) if last_modified 40: success &&= etag_matches?(response.etag) if etag 41: success 42: end
# File lib/action_dispatch/http/cache.rb, line 11 11: def if_modified_since 12: if since = env[HTTP_IF_MODIFIED_SINCE] 13: Time.rfc2822(since) rescue nil 14: end 15: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.