Erabili proxy= amaierako puntu bakarrak bezeroaren eskaerak kudeatu behar dituenean. Erabili mounts= helmuga-eskemek bide desberdinak behar dituztenean. Adibideek HTTPX interfaze horiek erabiltzen dituzte; proxies= API zaharra darabilen proiektuak bertsio horri dagokion konfigurazioa behar du.

Amaierako puntu bat

import httpx

timeout = httpx.Timeout(15.0, connect=5.0)

with httpx.Client(
    proxy="http://127.0.0.1:8080",
    trust_env=False,
    timeout=timeout,
) as client:
    response = client.get("https://example.com/")
    response.raise_for_status()
    print(response.status_code)

Ordezkatu tokiko entzulea martxan dagoen HTTP proxy batekin. HTTP proxyen zerrendako hautagaia ere zure helmugarekin probatu behar da. HTTPS helburuak http:// puntu hau CONNECT bidez erabil dezake. Eskema https:// bihurtzeak proxyarenganainoko TLSa eskatzen du; entzuleak eta bezeroak biek onartu behar dute.

Bide bereiziak helmuga-eskemaren arabera

import httpx

mounts = {
    "http://": httpx.HTTPTransport(
        proxy="http://127.0.0.1:8080",
        trust_env=False,
    ),
    "https://": httpx.HTTPTransport(
        proxy="http://127.0.0.1:8081",
        trust_env=False,
    ),
}

with httpx.Client(
    mounts=mounts,
    trust_env=False,
    timeout=httpx.Timeout(15.0, connect=5.0),
) as client:
    response = client.get("https://example.com/")
    response.raise_for_status()
    print(response.status_code)

Muntaketa-gakoak helburuko URLekin bat datoz. HTTP helburuek hemen 8080 ataka hautatzen dute, eta HTTPSek 8081. Proxyaren balioak entzulearen beraren protokoloa deskribatzen du; beraz, HTTPS muntaketak http:// proxy bat izan dezake zuzen. Jarri zure amaierako puntuak eta egiaztatu bi helmuga-eskemak.

Bi errezetek trust_env=False ezartzen dute bezeroan eta emandako garraioetan. Bestela HTTPXek proxyaren eta ziurtagirien ingurune-aldagaiak irakurtzen ditu lehenespenez. Hedapena haien mende badago, utzi detekzioa piztuta edo konfiguratu behar diren bideak eta konfiantza esplizituki. Konfiantza pribaturako, erabili zure HTTPX bertsioak onartutako TLS testuingurua eta CA konfigurazioa; helmugaren egiaztapena piztuta utzi. HTTPS proxyaren konfiantza helmugarenetik bereizita egon daiteke.

httpx.Timeout(15.0, connect=5.0) aukerak konexio-denbora ordezkatzen du eta lehenetsitako balioa ematen die beste osagai konfiguratuei. Irakurtzeak, idazteak eta poolaren zain egoteak muga bereiziak dituzte; hamabost segundo ez dira igarotako denbora osoaren epemuga. Poolaren denbora agortzeak beste lan batek erabilgarri dauden konexioak atxikitzen dituela esan dezake. Itxi bezeroak eta streaming-erantzunak behar bezala, proxya iristezina dela ondorioztatu aurretik.

Erlazionatutako artikuluak