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-ը։ Կառուցեք այն հավելվածի առկա client registration-ով, redirect URI-ով, state-ով և scopes-ով, ապա թոքենի փոխանակումից առաջ սահմանեք դրա երթուղին։ Հանրային HTTP երթուղու համար HTTP proxy ցանկից թեկնածուն տրամադրում է հասցեն այս սեսիայի proxy քարտեզում։

Կանչեք fetch_token-ը և պաշտպանված ռեսուրսների գործողությունները այս սեսիայի վրա։ proxies արգումենտը միայն fetch_token-ին փոխանցելիս գործում է այդ փոխանակման համար․ այն մշտական երթուղի չի տեղադրում հետագա կանչերի համար։

Բրաուզերում թույլտվության էջի այցը օգտագործում է բրաուզերի երթուղին։ Python-ը թոքենի հարցումը կատարում է առանձին, ուստի բրաուզերում հաջողությունը չի կարգավորում այս սեսիան։

Requests-ի ինտեգրումը միջավայրի հետ կարող է ազդել սեսիայի proxy-ի ընտրության վրա։ Հավելվածին պատկանող խիստ երթուղու համար վերանայեք trust_env-ը․ այն անջատելը նաև պահանջում է անհրաժեշտ CA կամ նույնականացման կարգավորումների բացահայտ տրամադրում։

Թոքենի endpoint-ի վերադարձրած OAuth սխալը կարող է գալ աշխատող proxy-ի միջոցով։ Պահեք այդ պատասխանը proxy-ի նույնականացումից առանձին, որի հավատարմագրերը տարբերվում են client secret-ից և access token-ից։

Առնչվող հոդվածներ