Я знаю, что многие подобные вопросы были заданы, но я изо всех сил пытаюсь понять. Я успешно использовал библиотеки php google для v3 для взаимодействия с функциями календаря. Код, который у меня есть:
<?php require_once "google-api-php-client/autoload.php"; session_start(); $client = new Google_Client(); $client->setApplicationName("My app"); $client->setClientId("CI.apps.googleusercontent.com"); $client->SetClientSecret("SECRET"); $client->setRedirectUri("redirect"); $client->setDeveloperKey("key"); $client->setScopes(array("https://www.googleapis.com/auth/calendar")); if (isset($_REQUEST['logout'])) { unset($_SESSION['access_token']); } if (isset($_GET['code'])) { $client->authenticate($_GET['code']); $_SESSION['access_token'] = $client->getAccessToken(); $redirect = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']; header('Location: ' . filter_var($redirect, FILTER_SANITIZE_URL)); } if (isset($_SESSION['token'])) { $client->setAccessToken($_SESSION['token']);//update token } $service=new Google_Service_Calendar($client); ... ?>
Это работает нормально, но календарь, который я хочу изменить, всегда тот же – приложение зарегистрировано на той же учетной записи, что и календарь. Есть ли способ обойти аутентификацию oauth2, чтобы я мог просто настроить записи в календаре, который у меня есть, без необходимости выполнять дополнительный этап аутентификации с перенаправлением? Я использовал Zend для этого, и до недавнего времени он работал нормально, но обновление до версии v3 API и использование oauth2, похожего на это, немного переборщило. Разумеется, я, возможно, неправильно понял – любая помощь совета мне очень помогла бы.