instance method
expires_in
Ruby on Rails 4.1.16
Since v3.0.20Signature
expires_in(seconds, options = {})
Sets a HTTP 1.1 Cache-Control header. Defaults to issuing a private instruction, so that intermediate caches must not cache the response.
expires_in 20.minutes expires_in 3.hours, public: true expires_in 3.hours, public: true, must_revalidate: true
This method will overwrite an existing Cache-Control header. See www.w3.org/Protocols/rfc2616/rfc2616-sec14.html for more possibilities.
The method will also ensure a HTTP Date header for client compatibility.
Parameters
-
secondsreq -
optionsopt = {}
Source
# File actionpack/lib/action_controller/metal/conditional_get.rb, line 152
def expires_in(seconds, options = {})
response.cache_control.merge!(
:max_age => seconds,
:public => options.delete(:public),
:must_revalidate => options.delete(:must_revalidate)
)
options.delete(:private)
response.cache_control[:extras] = options.map {|k,v| "#{k}=#{v}"}
response.date = Time.now unless response.date?
end
Defined in actionpack/lib/action_controller/metal/conditional_get.rb line 152
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionController::ConditionalGet