2016-06-13 4 views
0

Ich habe das Skript hier geändert Retrieve Google Calendar events using API v3 in javascript geändert, um eine Seite der nächsten Ereignisse in den nächsten 30 Tagen anzuzeigen, die jedes Ereignis zusammenfasst.Abrufen einzelner Kalenderereignisse mit API v3 in Javascript

Ich möchte einen Link mit jeder Ereigniszusammenfassung auf der obigen Seite zu einer anderen Seite erstellen, die mehr Details für ein bestimmtes einzelnes Ereignis zeigen würde.

Ich kann nicht scheinen, den Code zu schreiben, der die eventId erfolgreich nimmt und die Google Kalender API abfragt, um die Betriebsmittel für dieses einzelne Ereignis abzurufen.

Ich entschuldige mich im Voraus, wie ich versuche, Javascript zu lernen, wie ich gehe, so vermute ich, dass dies etwas ziemlich einfach ist, dass ich feststecke.

ich der Überzeugung bin, dass in der makeApiCall() Funktion würde ich wünschen, um die Linien zu ändern, die mit Start:

var request = gapi.client.calendar.events.list ({

zu :

gapi.client.load ('Kalender', 'v3', function() { var request = gapi.client.calendar.events.get ({ 'calendarId': Useremail, 'EVENTID': eventIDstr});

Ich kann eine gültige Antwort erhalten, wenn ich die Google APIs Explorer-Seiten verwende, damit ich weiß, dass ich die richtigen Kalender- und Ereignis-IDs habe. Ich kann es einfach nicht auf das richtige Javascript anwenden, um die Ergebnisse zu erhalten, nach denen ich suche.

Ich habe hoch und niedrig für Beispiele von Javascript gesucht, die Daten eines einzelnen Ereignisses aus Google Kalender mit v3 ihrer API abrufen und haben nichts Nützliches gefunden. Jede Hilfe würde sehr geschätzt werden.

Vielen Dank im Voraus.

Antwort

0

Ja, Sie sind auf dem richtigen Weg. Verwenden Sie Events:get. Events bietet verschiedene Geschmacksrichtungen von event resources.

HTTP-Anforderung

GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId 

Wenn erfolgreich, kehrt Methode eine event resource im Antworttext.

import com.google.api.services.calendar.Calendar; 
import com.google.api.services.calendar.model.Event; 

// ... 

// Initialize Calendar service with valid OAuth credentials 
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials) 
.setApplicationName("applicationName").build(); 

// Retrieve an event 
Event event = service.events().get('primary', "eventId").execute(); 

System.out.println(event.getSummary()); 

Sie können den Parameter singleEvents=true in der Listenanforderung verwenden, um den zweiten Aufruf zu vermeiden. Das wird den Server bitten, die wiederkehrende event-Erweiterung für Sie sofort auszuführen.