Pagpapatotoo ng proxy sa HTTParty: host, port, username at password
Ipasa ang host ng HTTP proxy, numeric na port at opsyonal na kredensyal ng proxy nang direkta sa isang kahilingang HTTParty, habang pinapanatili ang API token sa sarili nitong header.
Tinatanggap ng HTTParty ang forward proxy bilang mga opsyon ng kahilingan. Panatilihin ang URL ng serbisyo bilang unang argumento:
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
Tinutukoy ng host at port ng proxy ang tagapamagitan. Doon pinapatotohanan ang username at password ng proxy. Ang header na Authorization ay pag-aari ng API, na ang account ay maaaring lubos na naiiba.
Para sa proxy na walang pagpapatotoo, alisin ang http_proxyuser at http_proxypass. Para sa pampublikong kahilingan sa API sa pinapayagang pampublikong ruta, kumuha ng address na HTTP mula sa listahan ng HTTP proxy nang hindi pinapanatili ang kredensyal ng proxy sa kahilingan o sa mga default ng klase. Ang field ng host ay ipinapasa bilang address ng proxy sa Net::HTTP; ibigay ang hostname nang hiwalay sa port nito, hindi isang destination URL o PAC URL.
Ang wrapper class na may kasamang HTTParty ay maaaring sa halip gamitin ang class method nitong http_proxy upang magtakda ng mga default. Ang mga opsyon ng kahilingan ay pumapalit sa mga default na iyon para sa tawag na nagbibigay sa kanila.
Inilalarawan nito ang default na connection adapter ng HTTParty. Ang custom na connection_adapter ang may pananagutan sa pagbibigay-kahulugan sa mga opsyon nito, kaya siyasatin ang adapter na iyon kapag ang isang wastong setting ay tila binabalewala. Basahin ang HTTP status nang hiwalay sa na-parse na data ng API; ang matagumpay na pag-parse ng JSON ay hindi resulta ng pagpapatotoo.