Zugriff auf einen öffentlichen Kalender mit Google API, ohne dass sich ein Benutzer anmelden muss

8

Ich möchte mit der REST-API von Google auf einen öffentlichen Kalender zugreifen.

Die Google-Kalender-API schlägt vor, dass ich ein OAuth-Token benötige, um Zugriff auf Kalender zu erhalten:

Ссылка

Ich greife jedoch auf einen öffentlichen Kalender zu und mache dies vom Server aus, so dass ich den Benutzer nicht fragen muss / sollte, ihn zu authentifizieren.

Ich benutze die node.js api:

%Vor%

Dies gibt "Ihr Client hat eine ungültige oder illegale Anfrage ausgegeben. Das ist alles, was wir wissen."

Aufruf von .withApiKey('***') nach .calendars.get() gibt denselben Fehler zurück.

Irgendwelche Vorschläge?

    
Alasdair McLeay 05.08.2013, 17:33
quelle

3 Antworten

12

Wie die Dokumentation mehr als einmal angibt

  

Alle Anfragen an die Google Kalender-API müssen von einem authentifizierten Benutzer autorisiert werden.

Wenn Sie also die Google Kalender-API verwenden möchten, benötigen Sie einen authentifizierten Benutzer. Dies kann leicht mit Modulen wie Passport.js und Pass-google-oauth .

Allerdings, wenn Sie die API für einen Moment beiseite lassen und

  • Der Kalender ist öffentlich
  • Sie möchten nur Lesezugriff

Sie können die öffentliche Adresse leicht abrufen und den Kalender über ical, xml oder html konsumieren. Werfen Sie einen Blick auf den öffentlichen Kalender von UK holidays: Ссылка

Sie können öffentlich auf die Daten zugreifen von:

An dieser Stelle ist es einfach, solche Ressourcen mit Knoten abzurufen und die gewünschten Daten zu erhalten.

    
danielepolencic 18.08.2013, 21:09
quelle
6

Ach komm schon Leute! Sie können Daten ohne OAuth abrufen, ohne dass sich ein Benutzer anmelden muss, solange der Kalender öffentlich ist! Ich habe es selbst getestet.

%Vor%

Probieren Sie es einfach aus.

Die Dokumentation befindet sich hier Ссылка

    
Jim Zenn 11.10.2016 19:42
quelle
0

Google benötigt einen authentifizierten Benutzer, aber da es sich um einen öffentlichen Kalender handelt, sollten Sie Ihren Benutzer nicht zur Authentifizierung auffordern müssen. Es ist Server-Seite, verwenden Sie also Ihre eigene Authentifizierung (oder erstellen Sie nur einen Google-Benutzer), und als authentifizierter Benutzer haben Sie Zugriff auf diesen Kalender, ohne den echten Benutzer zu authentifizieren ...

    
Sebastien C. 19.08.2013 12:41
quelle