Proxyen hører hjemme på HTTParty-klassen din
Hold proxykonfigurasjonen til en HTTParty-klasse knyttet til klassemetoden som sender forespørselen.
Når en Ruby-klasse inkluderer HTTParty, setter du proxyen på den klassen og sender forespørsler gjennom den:
class Reports
include HTTParty
http_proxy 'proxy.example', 8080
end
response = Reports.get('https://reports.example/monthly')Eksemplet forutsetter at HTTParty er lastet. Proxy-metoden tar et vertsnavn og en heltallsport, med valgfrie argumenter for brukernavn og passord. For en tillatt public-API-test uten proxykonto bruker du en HTTP-kandidat fra HTTP-proxylisten for verten og porten. La mål-URL-en stå på get.
Inne i en instansmetode i Reports bruker du self.class.get(...) når hensikten er å kalle nettopp den konfigurerte klassemetoden. Å kalle HTTParty-modulen på øverste nivå kan i stedet omgå innpakningen du nettopp har konfigurert standardverdiene for.
Den samme forskjellen betyr noe når flere API-innpakninger deler én applikasjon. Gi hver av dem sin tiltenkte proxypolicy i stedet for å endre HTTParty::Basement globalt for å reparere én klasse.
HTTParty tilbyr også proxyvalg per forespørsel som http_proxyaddr og http_proxyport. Bruk dem når ruten virkelig er en del av én forespørsel. Klasse-standardverdier er lettere å lese når hver Reports-operasjon skal følge samme vei.