# File lib/action_dispatch/http/cache.rb, line 21
21: def etag_matches?(etag)
22: if_none_match && if_none_match == etag
23: 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 28
28: def fresh?(response)
29: last_modified = if_modified_since
30: etag = if_none_match
31:
32: return false unless last_modified || etag
33:
34: success = true
35: success &&= not_modified?(response.last_modified) if last_modified
36: success &&= etag_matches?(response.etag) if etag
37: success
38: end
# File lib/action_dispatch/http/cache.rb, line 7
7: def if_modified_since
8: if since = env['HTTP_IF_MODIFIED_SINCE']
9: Time.rfc2822(since) rescue nil
10: end
11: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.