2014-10-01 17 views
12

Sto sviluppando un'applicazione in cui ho bisogno di accedere a più calendari di google. Tutti questi calendari provengono da utenti diversi. E ora sto usando OAuth2 per la sincronizzazione. Ma, a quanto ho capito, posso generare solo 25 token di aggiornamento per ID cliente.Limite token di aggiornamento dell'API di Google

Note: Save refresh tokens in secure long-term storage and continue to use 
them as long as they remain valid. Limits apply to the number of refresh 
tokens that are issued per client-user combination, and per user across all clients, 
and these limits are different. If your application requests enough refresh tokens 
to go over one of the limits, older refresh tokens stop working. 

Come consigliato, sto mantenendo i token di aggiornamento nel mio DB. Ma il mio problema è, e se ricevo più clienti che vorrebbero sincronizzare il loro calendario? C'è un modo per trascurare il limite? Certo che non c'è. Quello che ho in mente adesso è solo per creare più ID client. Qualche consiglio?

risposta

24

Il suo 50 per utente (client-utente) come in Utente del cliente. Non client_id. Per ogni persona che autentica la tua applicazione puoi farla autenticare fino a 50 volte. Ogni token di aggiornamento che ricevi funzionerà. Dopo il 50 il primo smetterà di funzionare. Lavoreranno anche per un massimo di 6 mesi, penso che, se non è stato usato per 6 mesi, sarà invalidato.

È possibile avere il maggior numero di persone che utilizzano il client (id_cliente) come disposto ad autenticarsi. Non avrai problemi.

Da Google OAuth2 documentazione reperita here

scadenza provvisoria

Devi scrivere il codice di anticipare la possibilità che un gettone concesso potrebbe non funzionare più. Un token potrebbe smettere di funzionare per uno dei seguenti motivi:

• L'utente ha revocato l'accesso.

• Il token non è stato utilizzato per sei mesi.

• L'utente ha modificato le password e il token contiene gli ambiti Gmail.

• L'account utente ha superato un certo numero di richieste di token.

Attualmente esiste un limite di 50 token di aggiornamento per account utente per client. Se viene raggiunto il limite, la creazione di un nuovo token invalida automaticamente il token meno recente senza preavviso. Questo limite non si applica agli account di servizio.

C'è anche un limite maggiore sul numero totale di token che un account utente o un account di servizio può avere su tutti i client. La maggior parte degli utenti normali non supererà questo limite ma potrebbe essere l'account di prova di uno sviluppatore.

Se è necessario autorizzare più programmi, macchine o dispositivi, una soluzione è limitare il numero di client che si autorizza per account utente a 15 o 20. Se si è un amministratore di Google Apps, è possibile creare un amministratore aggiuntivo utenti e li usa per autorizzare alcuni dei clienti.

Domanda: Dove l'hai trovato? Vorrei segnalare a Google la sua un po 'di confusione

Nota: Salvare i token di aggiornamento in archiviazione sicura a lungo termine e continuare a usarli fintanto che restano validi. I limiti si applicano al numero di token di aggiornamento emessi per combinazione utente-client e per utente su tutti i client e questi limiti sono diversi.Se l'applicazione richiede abbastanza token di aggiornamento per superare uno dei limiti , i token di aggiornamento meno recenti smettono di funzionare.

+0

Sì. Dove l'hai trovato? Voglio segnalarlo a Google come confuso. L'ho appena aggiornato con il link da una fonte di documentazione migliore. – DaImTo

+0

Mi dispiace, ho cancellato il mio commento precedente. Ad ogni modo, ecco dove lo leggo https://developers.google.com/accounts/docs/OAuth2. – user3360031

+1

Wew. Posso finalmente procedere con questo. Grazie @DalmTo per chiarire tutto. :) – user3360031

Problemi correlati