Authlib proxy postavke: Requests nasuprot HTTPX
Odaberite proxyje Requests sesije ili argument proxyja HTTPX klijenta prema integraciji Authlib koja se koristi.
Provjerite Authlib import prije odabira argumenta proxyja. Njegove integracije Requests i HTTPX izlažu različitu transportnu konfiguraciju.
Requests OAuth2Session nasljeđuje ponašanje Sessiona u Requests:
from authlib.integrations.requests_client import OAuth2Session
client = OAuth2Session(client_id=client_id)
client.proxies.update({
"http": "http://proxy.example.net:8080",
"https": "http://proxy.example.net:8080",
})
Odgovarajuća asinhrona HTTPX integracija prima argument proxyja na nivou klijenta tokom konstrukcije:
from authlib.integrations.httpx_client import AsyncOAuth2Client
client = AsyncOAuth2Client(
client_id=client_id,
proxy="http://proxy.example.net:8080",
)
Primjer s HTTPX-om koristi pojedinačnu proxy opciju koju podržava Authlib 1.9.1. Ta integracija prosljeđuje prepoznate transportne opcije svom osnovnom HTTP klijentu. Rječnik proxies u stilu Requests nije zamjenjivi argument konstruktora. Za javne token i API krajnje točke na dopuštenoj javnoj proxy ruti, lista HTTP proxyja nudi kandidate za HTTP proxy URL-ove oba primjera.
Zadržite postojeću OAuth registraciju aplikacije, redirect URI, scopes i rukovanje tokenima pri primjeni bilo koje konfiguracije. Koristite konfigurirani klijent za operacije s tokenima i zaštićenim resursima i zatvorite ga kroz njegov uobičajeni sinhroni ili asinhroni životni ciklus.
Pomoćnici okvira mogu stvarati ove klijente u ime aplikacije. Provjerite integraciju pomoćnika i opcije konstrukcije klijenta prije prosljeđivanja argumenata u vrijeme zahtjeva. Ključna riječ proxies koju prihvata Requests zahtjev za token ne dokazuje da je prihvata i asinhroni HTTPX zahtjev.