Autentifikácia cez proxy v HTTParty: hostiteľ, port, používateľské meno a heslo
Odovzdajte hostiteľa HTTP proxy, číselný port a voliteľné prihlasovacie údaje proxy priamo požiadavke HTTParty a token API ponechajte v jeho vlastnej hlavičke.
HTTParty prijíma dopredné proxy ako voľby požiadavky. Ponechajte URL služby ako prvý argument:
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
Hostiteľ a port proxy určujú sprostredkovateľa. Používateľské meno a heslo proxy sa overujú tam. Hlavička Authorization patrí API, ktorého účet môže byť úplne iný.
Pri proxy bez autentifikácie vynechajte http_proxyuser a http_proxypass. Pre verejnú požiadavku API na povolenej verejnej trase vezmite HTTP adresu zo zoznamu HTTP proxy bez ponechania prihlasovacích údajov proxy v požiadavke alebo v predvolených hodnotách triedy. Pole hostiteľa sa odovzdáva ako adresa proxy do Net::HTTP; zadajte názov hostiteľa oddelene od portu, nie cieľovú URL ani URL PAC.
Obalová trieda, ktorá zahŕňa HTTParty, môže namiesto toho použiť svoju triednu metódu http_proxy na nastavenie predvolených hodnôt. Voľby požiadavky prepíšu tieto predvolené hodnoty pre volanie, ktoré ich zadáva.
Toto opisuje predvolený adaptér pripojenia HTTParty. Vlastný connection_adapter je zodpovedný za interpretáciu svojich volieb, preto tento adaptér preskúmajte, keď sa platné nastavenie zdá ignorované. Čítajte stav HTTP oddelene od parsovaných údajov API; úspešné parsovanie JSON nie je výsledkom autentifikácie.