php-google-spreadsheet-client getSpreadsheets возвращает пустой массив

Я использую PHP-Google-таблицы-клиент чтобы получить список листов Google. Вот код, который я использую:

<?php

require 'vendor/autoload.php';
require_once 'google-api-php-client/autoload.php';

use Google\Spreadsheet\DefaultServiceRequest;
use Google\Spreadsheet\ServiceRequestFactory;

function getToken()
{
$client = new Google_Client();
$client->setApplicationName('project');
$client->setClientId('client_id');

$key = file_get_contents('key.p12');
$cred = new Google_Auth_AssertionCredentials(
'[email protected]',
array('https://spreadsheets.google.com/feeds'),
$key
);

$client->setAssertionCredentials($cred);

if($client->getAuth()->isAccessTokenExpired()) {
$client->getAuth()->refreshTokenWithAssertion($cred);
}

$service_token = json_decode($client->getAccessToken());
return $service_token->access_token;
}

$accessToken = getToken();
$serviceRequest = new DefaultServiceRequest($accessToken);
ServiceRequestFactory::setInstance($serviceRequest);
$spreadsheetService = new Google\Spreadsheet\SpreadsheetService();
$spreadsheetFeed = $spreadsheetService->getSpreadsheets();
print_r(count($spreadsheetFeed));
foreach($spreadsheetFeed as $spreadsheet){
print_r($spreadsheet);
}

Но функция getSpreadsheets () возвращает пустой массив.
Как я могу получить список моих листов Google?

2

Решение

Я знаю, что ответ. Вы должны поделиться листами с электронной почтой клиента, чтобы получить его.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]