Module: HTTPX::Plugins::Proxy

Defined in:
lib/httpx/plugins/proxy.rb,
lib/httpx/plugins/proxy/ssh.rb,
lib/httpx/plugins/proxy/http.rb,
lib/httpx/plugins/proxy/socks4.rb,
lib/httpx/plugins/proxy/socks5.rb,
sig/plugins/proxy.rbs,
sig/plugins/proxy/ssh.rbs,
sig/plugins/proxy/http.rbs,
sig/plugins/proxy/socks4.rbs,
sig/plugins/proxy/socks5.rbs

Overview

This plugin adds support for proxies. It ships with support for:

  • HTTP proxies
  • HTTPS proxies
  • Socks4/4a proxies
  • Socks5 proxies

https://gitlab.com/os85/httpx/wikis/Proxy

Defined Under Namespace

Modules: ConnectionMethods, HTTP, InstanceMethods, OptionsMethods, ProxyRetries, SSH, Socks4, Socks5, _ProxyOptions Classes: Parameters, ProxyConnectionError

Constant Summary collapse

PROXY_ERRORS =

Returns:

  • (Array[singleton(StandardError)])
[TimeoutError, IOError, SystemCallError, Error].freeze

Class Method Summary collapse

Class Method Details

.configure(klass) ⇒ void

This method returns an undefined value.

Parameters:



25
26
27
28
29
# File 'lib/httpx/plugins/proxy.rb', line 25

def configure(klass)
  klass.plugin(:"proxy/http")
  klass.plugin(:"proxy/socks4")
  klass.plugin(:"proxy/socks5")
end

.extra_options(options) ⇒ Options & _ProxyOptions

Parameters:

Returns:



31
32
33
# File 'lib/httpx/plugins/proxy.rb', line 31

def extra_options(options)
  options.merge(supported_proxy_protocols: [])
end

.subpluginsObject



35
36
37
38
39
# File 'lib/httpx/plugins/proxy.rb', line 35

def subplugins
  {
    retries: ProxyRetries,
  }
end