0.4.0¶ ↑
-
Feature: SSH proxy plugin -> send requests over ssh gateway;
HTTPX.plugin(:"proxy/ssh"). with_proxy(uri: "ssh://localhost:2222", username: "root", auth_methods: %w[publickey], host_key: "ssh-rsa", keys: %w[test/support/ssh/ssh_host_ed25519_key]).get(URI)
-
Feature:
Faraday
Adapter -
refactoring: cookies plugin API simplification (this is a breaking change!):
session = HTTPX.plugin(:cookies) session.with_cookies("a" => "b").get(... session.cookies #=> session current cookie store, persists/updates session cookies as requests are processed session.wrap do |session| session.get(..) #=> "Set-Cookie" ... end #=> after this, cookie store resets to the state previous to wrap
Removed Session#cookie_store
client = HTTPX.plugin(:cookies) redirect_response = client.get(URI) #=> ... 302 ... Set-Cookie: "blablalba" ... # this sets the cookies # GET .... Cookie: "blablabla" .... response = client.get(URI) #=> ... 200 ... # also, setting cookies: client.cookies("a" => "b").get(URI) # ... Cookie: "a=b" ... #also seamlessly integrates with redirect follows client = HTTPX.plugins(:follow_redirects, :cookies) response = client.get(URI) #=> ... 200 ...
-
refactoring: connection pool now thread-local, improves thread-safety;
-
bugfix: leaking dns query when passing IO object as option;
-
bugfix: now multiple different resolvers are supported;
-
support: JRuby is again supported (as usual, only latest stable is guaranteed)