gspread 6: prokura enkursigo por API-vokoj kaj ĵetona refreŝigo
Donu al gspread perprokuran rajtigitan seancon kaj agordu la apartan transporton uzatan por refreŝigi la identigilojn de Google.
Agordu kaj la rajtigitan API-seancon de gspread kaj la transporton de la identigila refreŝiga peto, kiam iu el ili bezonas la prokuron:
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)Ĉi tio uzas la Client-interfacon de gspread 6 kun provizita seanco kaj la ekzistantaj identigiloj de la aplikaĵo. Ĝi agordas transporton, ne permesojn de la kalkultabelo aŭ OAuth-ampleksojn. Por publikaj API- kaj ĵetonfinaĵoj sur permesita publika vojo, elektu neaŭtentikigitan HTTP-kandidaton el la HTTP-prokura listo por la vojmapo. Tenu ambaŭ seancojn sen ajna konservita prokura konto kiam vi ŝanĝas la peranton.
AuthorizedSession aldonas identigilojn al API-petoj kaj povas refreŝigi ilin. Sen auth_request, google-auth povas krei alian Requests-seancon por tiu trafiko. La prokuraj defaŭltoj de la rajtigita seanco ne agordas tiun kreitan sendepende.
La Request-adaptilo supre provizas tiun duan vojon intence. Retenu ambaŭ seancojn dum ili estas uzataj, poste fermu ekstere posedatajn seancojn ĉe la fino de ilia aplikaĵa amplekso.
Ĉi tiuj estas Session-defaŭltoj, do la kunfandado de la Requests-medio ankoraŭ povas efiki ilin. Konsideru hereditajn prokurajn enigojn kiam fiksa vojo estas postulata.
Uzu la malsukcesan URL por distingi rifuzon de la kalkultabelo, prokuran defion kaj fiaskon de la identigila finaĵo. Kaŝmemorigita alirĵetono povas igi API-vokojn sukcesaj tute sen plenumi refreŝigon.