Socksify dostarcza adapter dla Net::HTTP. Wczytaj ten adapter i użyj jego udokumentowanej metody 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

Lokalny port to przykładowy punkt końcowy SOCKS. Do dozwolonego testu publicznej strony przez usługę SOCKS bez uwierzytelniania zgodny kandydat z listy proxy SOCKS może zastąpić ten host i port; dopasuj protokół obsługiwany przez zainstalowany adapter. request_uri zachowuje ścieżkę i zapytanie oraz dodaje ukośnik, gdy adres URL nie ma jawnej ścieżki. Drukowanie wyniku inspekcji obiektu odpowiedzi różni się od czytania jego treści.

Forma blokowa zamyka sesję HTTP po zakończeniu bloku. Ten przykład dotyczy celu HTTP; klient HTTPS potrzebuje także swojej zwykłej konfiguracji TLS.

Starsze fragmenty zapisują fabrykę jako SOCKSProxy. Bieżąca implementacja projektu zachowuje to jako alias, a jego README używa socks_proxy. Sprawdź zainstalowaną kombinację Socksify i Ruby, ponieważ adapter integruje się z wnętrznościami Net::HTTP.

Powiązane artykuły