Tornado tilbyr eitt asynkront HTTP-klientgrensesnitt med ulike implementasjonar under. Proxyval kan difor feile på grunn av den valde implementasjonen, sjølv når endepunktet til proxyen er rett.

HTTP-klientdokumentasjonen nemner SimpleAsyncHTTPClient som standardimplementasjonen og dokumenterer curl-baserte alternativet. Førespurnadsval som proxy_host har implementasjonsspesifikke støttenotat. Les desse notata før du legg til val i eit fetch-kall.

Konfigurer før klienten blir bygd

I eit miljø som allereie har curl-backenden, kan ein applikasjon velje han før han opprettar sin delte klient:

from tornado.httpclient import AsyncHTTPClient

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

Bruk deretter dei dokumenterte førespurnadsvala for proxyvert, port, autentisering og tidsavbrot for det tiltenkte kallet. Hald vertsnamnet skilt frå den numeriske porten. Å velje backenden vel ikkje i seg sjølv eit proxyendepunkt. For ei tillaten offentleg HTTP-rute leverer HTTP-proxylista verts- og portkandidatar for desse førespurnadsvala.

Bygginga av klienten er viktig fordi ein applikasjon eller eit rammeverk kan opprette og halde på ein HTTP-klient før denne koden køyrer. Undersøk den faktiske instansen som vart brukt i den mislukka førespurnaden, i staden for å byggje ein annan klient etterpå og anta at han forklarer den første.

For diagnostikk, registrer den aktive backenden og versjonen av det underliggjande biblioteket saman med det mislukka trinnet. Skil eit ikkje-støtta førespurnadsval frå eit nettverkstidsavbrot og frå eit HTTP-svar som proxyen returnerte. Desse observasjonane fører til ulike rettingar.

Relaterte artiklar