bonjour à tous,

Je vous contact suite à un problème que j'ai chez un client lors d'une connexion au service google dans le but de me connecter à l'API Google Sheet.

Il y a pas mal de temps et suite à la demande d'un client, j'avais déjà fait cette connexion. J'avais eu du mal au niveau de la récupération du token, mais j'a vais finit par passer par une variable OAuth2Paramètres. Le soucis avec cette variable, c'est qu'elle ouvre une fenêtre du navigateur où des paramètres doivent être acceptés (Je vous met 3 screens des autorisations à valider une après l'autre.


Nom : Capture.PNG
Affichages : 1282
Taille : 19,1 Ko
///////////////////////////////////////////////////////////////////////////////////////////
Nom : Capture2.PNG
Affichages : 1245
Taille : 17,7 Ko
//////////////////////////////////////////////////////////////////////////////////////////
Nom : Capture3.PNG
Affichages : 1233
Taille : 62,9 Ko

C'était ok pour le premier client, car les modifications se faisaient une seule fois par jour, donc ca ne le dérangeait pas. Pour le nouveau, c'est un peu plus complexe car la connexion doit se faire à chaque modif.

Autant vous dire qu'il est hors de question qu'il doive faire la même manipulation 150 fois dans la journée.


Donc je me demandais si certains d'entre vous avaient une solution pour récupérer le token sans que cette fenêtre s'ouvre.


Edit: Mon code de lecture d'un document googleSheet, au cas où:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
OAuth2Params.ClientID = "MonClientID"
OAuth2Params.ClientSecret ="MonClientSecret"
OAuth2Params.URLAuth = "https://accounts.google.com/o/oauth2/auth"
OAuth2Params.URLToken="https://accounts.google.com/o/oauth2/token"
OAuth2Params.Scope="https://www.googleapis.com/auth/spreadsheets"
 
MonToken est un AuthToken = AuthIdentifie(OAuth2Params)
 
req est un httpRequête
req.Méthode = httpGet
req.URL = "https://sheets.googleapis.com/v4/spreadsheets/IDSheet/values/Feuil1!A1:E5"
req.AuthToken = MonToken // Token d'authentification
req.ContentType = "application/json"
vParamAPI est un Variant
req.Contenu = VariantVersJSON(vParamAPI)
 
réponseHTTP est un httpRéponse = HTTPEnvoie(req)
soit Données = JSONVersVariant(réponseHTTP.Contenu)