Socksify dodává adaptér pro Net::HTTP. Načtěte tento adaptér a použijte jeho dokumentovanou metodu socks_proxy:

require 'socksify/http'

uri = URI('http://example.com/?view=compact')
Net::HTTP.socks_proxy('127.0.0.1', 1400)
         .start(uri.host, uri.port) do |http|
  response = http.get(uri.request_uri)
  puts response.body
end

Místní port je příklad koncového bodu SOCKS. Pro povolený test veřejného webu přes službu SOCKS bez ověřování může kompatibilní kandidát ze seznamu SOCKS proxy nahradit tento hostitel a port; slaďte protokol, který nainstalovaný adaptér podporuje. request_uri zachovává cestu a dotaz a doplní lomítko, když URL nemá výslovnou cestu. Tisk výstupu inspekce objektu odpovědi se liší od čtení jeho těla.

Bloková forma uzavře relaci HTTP po dokončení bloku. Tento příklad je pro cíl HTTP; klient HTTPS také potřebuje svou obvyklou konfiguraci TLS.

Starší úryvky píší továrnu jako SOCKSProxy. Současná implementace projektu to zachovává jako alias, zatímco jeho README používá socks_proxy. Ověřte nainstalovanou kombinaci Socksify a Ruby, protože adaptér se integruje s vnitřnostmi Net::HTTP.

Související články