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?
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
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.
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 ...
Tags und Links google-api node.js google-calendar google-api-nodejs-client