HTTParty hyväksyy eteenpäin välittävän välityspalvelimen pyynnön asetuksina. Pidä palvelun URL ensimmäisenä argumenttina:

response = HTTParty.get(
  'https://api.example/items',
  http_proxyaddr: 'proxy.example',
  http_proxyport: 8080,
  http_proxyuser: ENV.fetch('PROXY_USER'),
  http_proxypass: ENV.fetch('PROXY_PASSWORD'),
  headers: { 'Authorization' => "Bearer #{ENV.fetch('API_TOKEN')}" },
  open_timeout: 5,
  read_timeout: 15
)
puts response.code

Välityspalvelimen isäntä ja portti yksilöivät välittäjän. Välityspalvelimen käyttäjänimi ja salasana todentuvat siellä. Authorization-otsake kuuluu API:lle, jonka tili voi olla täysin eri.

Jos välityspalvelin ei käytä todennusta, jätä http_proxyuser ja http_proxypass pois. Julkisen API-pyynnön tekemiseen sallitulla julkisella reitillä ota HTTP-osoite HTTP-välityspalvelinluettelosta niin, ettei välityspalvelimen tunnistetietoja jää pyyntöön eikä luokan oletuksiin. Isäntäkenttä välitetään välityspalvelimen osoitteena Net::HTTP:lle; anna isäntänimi erillään portistaan, ei kohde-URL:na eikä PAC-URL:na.

HTTPartyn sisältävä kääreluokka voi sen sijaan käyttää http_proxy-luokkametodiaan oletusten asettamiseen. Pyynnön asetukset ohittavat nämä oletukset sen kutsun osalta, joka ne antaa.

Tämä kuvaa HTTPartyn oletusyhteysadapteria. Mukautettu connection_adapter vastaa asetustensa tulkinnasta, joten tutki tätä adapteria, kun kelvollinen asetus näyttää jäävän huomiotta. Lue HTTP-tila erillään jäsenneistä API-tiedoista; onnistunut JSON-jäsennys ei ole todennuksen tulos.

Aiheeseen liittyvät artikkelit