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 проширује Requests-ов Session. Направите га са постојећом регистрацијом клијента апликације, redirect URI-јем, state и scopes, па поставите његову руту пре размене токена. За јавну HTTP руту кандидат са листе HTTP проксија даје адресу у мапи проксија ове сесије.

Позовите fetch_token и операције заштићених ресурса на овој сесији. Аргумент proxies прослеђен само у fetch_token важи за ту размену; не успоставља трајну руту за касније позиве.

Посета страници за ауторизацију у прегледачу користи руту прегледача. Python прави захтев за токен одвојено, па успех у прегледачу не конфигурише ову сесију.

Интеграција Requests-а са окружењем може утицати на избор проксија сесије. За строгу руту којом управља апликација прегледајте trust_env; његово искључивање такође захтева изричито навођење потребних CA или подешавања аутентификације.

OAuth грешка коју врати token endpoint може стићи преко исправног проксија. Сачувајте тај одговор одвојено од аутентификације проксија, чији се подаци разликују од client secret и access token.

Повезани чланци