Autentizace proxy v HTTParty: hostitel, port, uživatelské jméno a heslo
Předejte hostitele HTTP proxy, číselný port a volitelné přihlašovací údaje proxy přímo požadavku HTTParty a token API ponechte v jeho vlastní hlavičce.
HTTParty přijímá dopředné proxy jako volby požadavku. Ponechte URL služby jako první 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
Hostitel a port proxy určují prostředníka. Uživatelské jméno a heslo proxy se ověřují tam. Hlavička Authorization patří API, jehož účet může být zcela jiný.
U proxy bez autentizace vynechte http_proxyuser a http_proxypass. Pro veřejný požadavek API na povolené veřejné trase vezměte HTTP adresu ze seznamu HTTP proxy, aniž byste přihlašovací údaje proxy ponechali v požadavku nebo ve výchozích hodnotách třídy. Pole hostitele se předává jako adresa proxy do Net::HTTP; zadejte název hostitele odděleně od portu, ne cílovou URL ani URL PAC.
Obalová třída, která zahrnuje HTTParty, může místo toho použít svou třídní metodu http_proxy k nastavení výchozích hodnot. Volby požadavku tyto výchozí hodnoty pro dané volání přepíší.
Toto popisuje výchozí adaptér připojení HTTParty. Vlastní connection_adapter odpovídá za výklad svých voleb, proto tento adaptér prozkoumejte, když se platné nastavení zdá ignorované. Čtěte stav HTTP odděleně od parsovaných dat API; úspěšné parsování JSON není výsledkem autentizace.