requests-oauthlib: impostare il proxy di OAuth2Session prima di fetch_token
Usate la stessa sessione consapevole del proxy per ottenere il token e per le risorse protette, mantenendo intatto il flusso OAuth esistente.
from requests_oauthlib import OAuth2Session
session = OAuth2Session(client_id=client_id, redirect_uri=redirect_uri)
session.proxies.update({
'http': 'http://proxy.example:8080',
'https': 'http://proxy.example:8080',
})OAuth2Session estende la Session di Requests. Costruitelo con la registrazione client esistente dell'applicazione, il redirect URI, lo state e gli scopes, poi impostate il suo percorso prima dello scambio del token. Per una rotta HTTP pubblica, un candidato dalla lista di proxy HTTP fornisce l'indirizzo nella mappa dei proxy di questa sessione.
Chiamate fetch_token e le operazioni sulle risorse protette su questa sessione. Un argomento proxies passato solo a fetch_token vale per quello scambio; non installa una rotta duratura per le chiamate successive.
La visita alla pagina di autorizzazione nel browser usa la rotta del browser. Python esegue la richiesta del token separatamente, quindi il successo nel browser non configura questa sessione.
L'integrazione di Requests con l'ambiente può influire sulla scelta del proxy della sessione. Per una rotta rigorosa di proprietà dell'applicazione, rivedete trust_env; disattivarlo richiede anche di fornire esplicitamente le eventuali impostazioni CA o di autenticazione necessarie.
Un errore OAuth restituito da un endpoint del token può arrivare attraverso un proxy funzionante. Conservate quella risposta separatamente dall'autenticazione del proxy, le cui credenziali sono distinte dai segreti client e dai token di accesso.