2011-01-04 14 views
6

sto cercando di ottenere l'accesso al mangime todo del Google con questo URL:Autorizzazione per Google ToDo List (authtoken, secid)

https://www.google.com/calendar/tdl?secid=<SECID>&tdl={%22action_list%22%3A[{%22action_type%22%3A%22get_all%22%2C%22action_id%22%3A%221%22%2C%22list_id%22%3A%2215052708471047222911%3A0%3A0%22%2C%22get_deleted%22%3Afalse}]%2C%22client_version%22%3A-1}

Se apro questo nel mio browser con una corretta secid, mi mostra esattamente quello che voglio.

Ora, la domanda è: come ottengo il secid al livello di programmazione (in particolare, in un programma java)? Ho accesso a authToken (da CalendarService), ma non ho idea di come utilizzarlo per autorizzare il mio accesso all'URL sopra.

Ho provato a utilizzare l'url http://google.com/accounts/ServiceLogin, ma non ho trovato alcun esempio.

Qualsiasi aiuto, per favore?

risposta

1

Da quello che ho letto secid è un ID di sessione ottenuto da cookie del suo navigatore web. Mentre il tuo caso utilizza Java che implica un'app server. Se questo è il caso, vuoi rinunciare all'idea di usare interamente secid.

Invece, si desidera verificare Google's OAuth2 documentation. Se stai usando Java, molto probabilmente ti interesserebbe the web-server OAuth flow. Prestare particolare attenzione ai diagrammi di sequenza.

I passaggi chiave includono:

1) ottenere un codice di autorizzazione da parte di Google OAuth con il consenso dell'utente. Per questo, reindirizza l'utente a Google con l'ambito appropriato. Controlla la lista di calendar scopes per il tuo caso. Una volta che l'utente ha acconsentito, Google ti reindirizza con un codice di autorizzazione.

2) Chiama Google OAuth con il codice di autorizzazione e le credenziali della tua app per scambiare un token di accesso.

3) Chiama l'API di Google Calendar utilizzando il token di accesso.

E se si utilizza il client Java di Google come suggerito da @ChaosPredictor, è probabile che alcuni dei passaggi siano già integrati nel client Java (e il codice sarà molto più semplice).

Problemi correlati