Provjerite Authlib uvoz prije odabira argumenta proxyja. Njegove integracije Requests i HTTPX izlažu različitu transportnu konfiguraciju.

Requests OAuth2Session nasljeđuje ponašanje Sessiona u Requestsu:

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 izgradnje:

from authlib.integrations.httpx_client import AsyncOAuth2Client

client = AsyncOAuth2Client(
    client_id=client_id,
    proxy="http://proxy.example.net:8080",
)

Primjer sa 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 Requestsa nije zamjenjiv argument konstruktora. Za javne token i API završne točke na dozvoljenoj 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 te klijente u ime aplikacije. Provjerite integraciju pomoćnika i opcije izgradnje 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.

Povezani članci