2017-11-17 2 views
0

Ich arbeite an einer Webanwendung, die in PHP und Javascript ist.In dieser Anwendung speichern wir einige Ereignisse in unserer eigenen Datenbank.So erstellen Sie Ereignisse von Google Kalender API

Nun, was wir wollen, ist, wenn wir ein neues Ereignis in unserer App erstellen, sollte es ein doppeltes Ereignis auf dem Google-Kalender des aktuellen angemeldeten Benutzers Google Kalender erstellen erstellen.

Wir können unsere Benutzer bitten, einen API-Schlüssel über ihre Google-Konsole zu generieren.

Gibt es eine Möglichkeit, ein Google-Kalenderereignis nur mithilfe eines API-Schlüssels und ohne andere Konfiguration zu erstellen.

dank

Antwort

1

Leider müssen Sie OAuth 2.0 für Ihre App und nicht für die API verwenden Schlüssel. Auf der Grundlage dieser documentation:

API-Schlüssel

  • API-Schlüssel verwendet werden sollte, wenn API-Aufrufe von Benutzerdaten nicht beteiligt sind. Dies bedeutet, dass die für eine Anfrage zurückgegebenen Daten unabhängig vom Anrufer gleich sind. APIs wie das Google Maps API und das Google Translation API verwenden API-Schlüssel.

Google-Authentifizierung

  • Google-Authentifizierung ist günstig, wenn alle Benutzer über Google-Konten. Sie können beispielsweise die Google-Authentifizierung verwenden, wenn Ihre API Google Apps (z. B. Google Drive-Companion) beiliegt.

Da Sie Daten des Benutzers zugreifen werden müssen Sie OAuth 2.0-Authentifizierung implementieren.

Weitere Referenz:

0

mit der PHP-quickstart Siehe, wie die Umwelt-Setup:

https://developers.google.com/google-apps/calendar/quickstart/php

Ändern, um den Umfang zu Google_Service_Calendar :: Kalender und löschen Sie alle gespeicherten

$event = new Google_Service_Calendar_Event(array(
    'summary' => 'Google I/O 2015', 
    'location' => '800 Howard St., San Francisco, CA 94103', 
    'description' => 'A chance to hear more about Google\'s developer products.', 
    'start' => array(
    'dateTime' => '2015-05-28T09:00:00-07:00', 
    'timeZone' => 'America/Los_Angeles', 
), 
    'end' => array(
    'dateTime' => '2015-05-28T17:00:00-07:00', 
    'timeZone' => 'America/Los_Angeles', 
), 
    'recurrence' => array(
    'RRULE:FREQ=DAILY;COUNT=2' 
), 
    'attendees' => array(
    array('email' => '[email protected]'), 
    array('email' => '[email protected]'), 
), 
    'reminders' => array(
    'useDefault' => FALSE, 
    'overrides' => array(
     array('method' => 'email', 'minutes' => 24 * 60), 
     array('method' => 'popup', 'minutes' => 10), 
    ), 
), 
)); 

$calendarId = 'primary'; 
$event = $service->events->insert($calendarId, $event); 
printf('Event created: %s\n', $event->htmlLink); 
Verwandte Themen