Мое клиентское приложение на iOS авторизует пользователя, получает токен доступа и токен обновления и отправляет его на мой сервер, где оно хранится в базе данных.Сервер подключается к календарю и получает события.Проблема в том, что токен доступа не обновляется каким-либо образом с помощью токена обновления, и возвращается эта ошибка:
{"error": "unauthorized_client", "error_description": "Unauthorized"}
public function sync($token, $expiresIn, $refreshToken, $created)
{
$client = new Google_Client();
$client->setApplicationName('Google Calendar Synchroniser');
$client->setScopes(Google_Service_Calendar::CALENDAR_READONLY);
$client->setAuthConfig('../client_secret_***************.apps.googleusercontent.com');
$client->setAccessType('offline');
$client->setApprovalPrompt('force');
$client->setAccessToken(json_encode([
'access_token' => $token,
'created' => $created,
'expires_in' => $expiresIn,
'refresh_token' => $refreshToken
], true));
//create google calendar service
$service = new Google_Service_Calendar($client);
//filter for events searching
$calendarId = 'primary';
$optParams = array(
'maxResults' => 10,
'singleEvents' => true
);
//get events
$results = $service->events->listEvents($calendarId, $optParams);
}