Class: Ferrum::Cookies
- Inherits:
-
Object
- Object
- Ferrum::Cookies
- Defined in:
- lib/ferrum/cookies.rb
Defined Under Namespace
Classes: Cookie
Instance Method Summary collapse
- #[](name) ⇒ Object
- #all ⇒ Object
- #clear ⇒ Object
-
#initialize(page) ⇒ Cookies
constructor
A new instance of Cookies.
-
#remove(name:, **options) ⇒ Object
Supports :url, :domain and :path options.
- #set(name: nil, value: nil, **options) ⇒ Object
Constructor Details
#initialize(page) ⇒ Cookies
Returns a new instance of Cookies.
49 50 51 |
# File 'lib/ferrum/cookies.rb', line 49 def initialize(page) @page = page end |
Instance Method Details
#[](name) ⇒ Object
58 59 60 |
# File 'lib/ferrum/cookies.rb', line 58 def [](name) all[name] end |
#all ⇒ Object
53 54 55 56 |
# File 'lib/ferrum/cookies.rb', line 53 def all = @page.command("Network.getAllCookies")["cookies"] .map { |c| [c["name"], Cookie.new(c)] }.to_h end |
#clear ⇒ Object
86 87 88 89 |
# File 'lib/ferrum/cookies.rb', line 86 def clear @page.command("Network.clearBrowserCookies") true end |
#remove(name:, **options) ⇒ Object
Supports :url, :domain and :path options
75 76 77 78 79 80 81 82 83 84 |
# File 'lib/ferrum/cookies.rb', line 75 def remove(name:, **) raise "Specify :domain or :url option" if ![:domain] && ![:url] && !default_domain = .merge(name: name) [:domain] ||= default_domain @page.command("Network.deleteCookies", **) true end |
#set(name: nil, value: nil, **options) ⇒ Object
62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/ferrum/cookies.rb', line 62 def set(name: nil, value: nil, **) = .dup [:name] ||= name [:value] ||= value [:domain] ||= default_domain expires = .delete(:expires).to_i [:expires] = expires if expires > 0 @page.command("Network.setCookie", **)["success"] end |