gspread 6 proxy usmjeravanje za API pozive i osvježavanje tokena
Dajte gspreadu ovlaštenu sesiju koja poznaje proxy i postavite zasebni transport koji se koristi za osvježavanje Google vjerodajnica.
Postavite i ovlaštenu API sesiju gspreada i transport zahtjeva za osvježavanje vjerodajnica kada bilo kojem od njih treba proxy:
import requests
import gspread
from google.auth.transport.requests import AuthorizedSession, Request
routes = {
'http': 'http://proxy.example:8080',
'https': 'http://proxy.example:8080',
}
token_session = requests.Session()
token_session.proxies.update(routes)
session = AuthorizedSession(
credentials,
auth_request=Request(session=token_session),
)
session.proxies.update(routes)
client = gspread.Client(auth=credentials, session=session)Ovo koristi Client sučelje gspread 6 s isporučenom sesijom i postojećim vjerodajnicama aplikacije. Postavlja transport, a ne dopuštenja za proračunsku tablicu ili OAuth opsege. Za javne API i token endpointove na dopuštenoj javnoj ruti odaberite neautentificiranog HTTP kandidata s popisa HTTP proxyja za kartu ruta. Držite obje sesije bez ikakvog spremljenog proxy računa kada mijenjate posrednika.
AuthorizedSession dodaje vjerodajnice API zahtjevima i može ih osvježiti. Bez auth_request google-auth može stvoriti drugu Requests sesiju za taj promet. Proxy zadane vrijednosti na ovlaštenoj sesiji ne postavljaju onu koja je stvorena neovisno.
Request adapter iznad namjerno osigurava tu drugu rutu. Zadržite obje sesije dok se koriste, a zatim zatvorite sesije u vanjskom vlasništvu na kraju njihovog opsega primjene.
Ovo su Session zadane vrijednosti, pa spajanje Requests okruženja još uvijek može utjecati na njih. Uzmite u obzir naslijeđene proxy unose kada je potrebna fiksna ruta.
Upotrijebite neuspjeli URL da razlikujete odbijanje proračunske tablice, proxy izazov i kvar endpointa vjerodajnica. Predmemorirani pristupni token može učiniti da API pozivi uspiju bez ikakvog izvršavanja osvježavanja.