Module: Ferrum::Browser::API::Header

Included in:
Ferrum::Browser::API
Defined in:
lib/ferrum/browser/api/header.rb

Instance Method Summary collapse

Instance Method Details

#add_header(header, permanent: true) ⇒ Object



26
27
28
# File 'lib/ferrum/browser/api/header.rb', line 26

def add_header(header, permanent: true)
  add_headers(header, permanent: permanent)
end

#add_headers(headers, permanent: true) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/ferrum/browser/api/header.rb', line 12

def add_headers(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)
end

#headers=(headers) ⇒ Object



7
8
9
10
# File 'lib/ferrum/browser/api/header.rb', line 7

def headers=(headers)
  @headers = {}
  add_headers(headers)
end