method
handle_options
v6.1.3.1 -
Show latest stable
-
0 notes -
Class: ActionDispatch::Cookies::CookieJar
- 1.0.0
- 1.1.6
- 1.2.6
- 2.0.3
- 2.1.0
- 2.2.1
- 2.3.8
- 3.0.0 (0)
- 3.0.9 (0)
- 3.1.0 (0)
- 3.2.1 (0)
- 3.2.8 (0)
- 3.2.13 (0)
- 4.0.2 (0)
- 4.1.8 (0)
- 4.2.1 (0)
- 4.2.7 (0)
- 4.2.9 (0)
- 5.0.0.1 (0)
- 5.1.7 (0)
- 5.2.3 (0)
- 6.0.0 (0)
- 6.1.3.1 (0)
- 6.1.7.7 (0)
- 7.0.0 (0)
- 7.1.3.2 (0)
- 7.1.3.4 (0)
- What's this?
handle_options(options)
private
Hide source
# File actionpack/lib/action_dispatch/middleware/cookies.rb, line 441 def handle_options(options) if options[:expires].respond_to?(:from_now) options[:expires] = options[:expires].from_now end options[:path] ||= "/" cookies_same_site_protection = request.cookies_same_site_protection options[:same_site] ||= cookies_same_site_protection.call(request) if options[:domain] == :all || options[:domain] == "all" # If there is a provided tld length then we use it otherwise default domain regexp. domain_regexp = options[:tld_length] ? /([^.]+\.?){#{options[:tld_length]}}$/ : DOMAIN_REGEXP # If host is not ip and matches domain regexp. # (ip confirms to domain regexp so we explicitly check for ip) options[:domain] = if !request.host.match?(/^[\d.]+$/) && (request.host =~ domain_regexp) ".#{$&}" end elsif options[:domain].is_a? Array # If host matches one of the supplied domains. options[:domain] = options[:domain].find do |domain| domain = domain.delete_prefix(".") request.host == domain || request.host.end_with?(".#{domain}") end end end