Tornado tilbyr ett asynkront HTTP-klientgrensesnitt med ulike implementasjoner under. Proxyvalg kan derfor feile på grunn av den valgte implementasjonen, selv når proxyens endepunkt er riktig.

HTTP-klientdokumentasjonen angir SimpleAsyncHTTPClient som standardimplementasjonen og dokumenterer det curl-baserte alternativet. Valg for forespørsler som proxy_host har implementasjonsspesifikke støttenotater. Les disse notatene før du legger til valg i et fetch-kall.

Konfigurer før klienten bygges

I et miljø som allerede har curl-backenden, kan en applikasjon velge den før den oppretter sin delte klient:

from tornado.httpclient import AsyncHTTPClient

AsyncHTTPClient.configure('tornado.curl_httpclient.CurlAsyncHTTPClient')
client = AsyncHTTPClient()

Bruk deretter de dokumenterte valgene for proxyvert, port, autentisering og tidsavbrudd for det tiltenkte kallet. Hold vertsnavnet atskilt fra den numeriske porten. Å velge backenden velger ikke i seg selv et proxyendepunkt. For en tillatt offentlig HTTP-rute leverer HTTP-proxylisten verts- og portkandidater for disse valgene.

Byggingen av klienten er viktig fordi en applikasjon eller et rammeverk kan opprette og beholde en HTTP-klient før denne koden kjører. Undersøk den faktiske instansen som ble brukt i den mislykkede forespørselen, i stedet for å bygge en annen klient etterpå og anta at den forklarer den første.

For diagnostikk, registrer den aktive backenden og versjonen av det underliggende biblioteket sammen med det mislykkede trinnet. Skill et ikke-støttet valg for forespørselen fra en nettverkstidsavbrudd og fra et HTTP-svar som proxyen returnerte. Disse observasjonene fører til ulike rettelser.

Relaterte artikler