Class: Ferrum::Headers
- Inherits:
-
Object
- Object
- Ferrum::Headers
- Defined in:
- lib/ferrum/headers.rb
Instance Method Summary collapse
-
#add(headers, permanent: true) ⇒ true
Adds given headers to already set ones.
-
#clear ⇒ true
Clear all headers.
-
#get ⇒ Hash{String => String}
Get all headers.
-
#initialize(page) ⇒ Headers
constructor
A new instance of Headers.
-
#set(headers) ⇒ true
Set given headers.
Constructor Details
#initialize(page) ⇒ Headers
Returns a new instance of Headers.
5 6 7 8 |
# File 'lib/ferrum/headers.rb', line 5 def initialize(page) @page = page @headers = {} end |
Instance Method Details
#add(headers, permanent: true) ⇒ true
Adds given headers to already set ones.
52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/ferrum/headers.rb', line 52 def add(headers, permanent: true) if headers["Referer"] @page.referrer = headers["Referer"] headers.delete("Referer") unless permanent end @headers.merge!(headers) user_agent = @headers["User-Agent"] accept_language = @headers["Accept-Language"] set_overrides(user_agent: user_agent, accept_language: accept_language) @page.command("Network.setExtraHTTPHeaders", headers: @headers) true end |
#clear ⇒ true
Clear all headers.
37 38 39 40 |
# File 'lib/ferrum/headers.rb', line 37 def clear @headers = {} true end |
#get ⇒ Hash{String => String}
Get all headers.
15 16 17 |
# File 'lib/ferrum/headers.rb', line 15 def get @headers end |
#set(headers) ⇒ true
Set given headers. Eventually clear all headers and set given ones.
27 28 29 30 |
# File 'lib/ferrum/headers.rb', line 27 def set(headers) clear add(headers) end |