HTTParty-proxyautentisering: vert, port, brukarnamn og passord
Send ein HTTP-proxyvert, numerisk port og valfrie proxy-legitimasjonar rett til ein HTTParty-førespurnad, medan API-tokenet blir i sin eigen header.
HTTParty godtek videresendingsproxyen som førespurnadsval. Hald tenestas URL som første 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
Proxyverten og -porten peikar ut mellomleddet. Proxybrukaren og -passordet autentiserer der. Authorization-headeren høyrer til API-et, som kan ha ein heilt annan konto.
For ein proxy utan autentisering kan du utelate http_proxyuser og http_proxypass. For ein offentleg API-førespurnad på ei tillaten offentleg rute tek du ein HTTP-adresse frå HTTP-proxylista, utan å behalde proxy-legitimasjonar i førespurnaden eller i standardverdiane til klassa. Vertsfeltet blir sendt som proxyadresse til Net::HTTP; oppgje vertsnamnet skilt frå porten, ikkje ein mål-URL eller PAC-URL.
Ei innpakningsklasse som inkluderer HTTParty kan i staden bruke http_proxy-klassemetoden sin til å setje standardverdiar. Førespurnadsval overstyrer desse standardverdiane for kallet som oppgjev dei.
Dette skildrar standard tilkoplingsadapter i HTTParty. Ein tilpassa connection_adapter er ansvarleg for å tolke vala sine, så gransk den adapteren når ei gyldig innstilling ser ut til å bli ignorert. Les HTTP-statusen skilt frå dei parsa API-dataa; vellukka JSON-parsing er ikkje eit autentiseringsresultat.