Google Sheet API php curl запрос на получение

Я использую HTTP-запрос Google oauth v2 для получения токена доступа, который работает нормально, я получаю токен, но при использовании токена для доступа к электронной таблице я получаю ошибку 403.

Это код запроса, который я использую.

$get = 'https://sheets.googleapis.com/v4/spreadsheets/1bHKgQLgqB4PfjRUVPkYk5_L7aQOtZGOkhJbr_RFxQQY?access_token='.$access_token;

$ch = curl_init();

curl_setopt($ch,CURLOPT_URL,$get);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET' );
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_HEADER, false);
$output = curl_exec($ch);
curl_close($ch);

var_dump($output);

И это возвращение с заголовком

HTTP/1.1 403 Forbidden
Vary: X-Origin
Vary: Referer
Content-Type: application/json; charset=UTF-8
Date: Tue, 15 Nov 2016 13:13:09 GMT
Server: ESF
Cache-Control: private
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Alt-Svc: quic=":443"; ma=2592000; v="36,35,34"Accept-Ranges: none
Vary: Origin,Accept-Encoding
Transfer-Encoding: chunked

{
"error": {
"code": 403,
"message": "The caller does not have permission",
"status": "PERMISSION_DENIED"}
}

Я устал обнародовать лист, но это не имеет значения для ошибки. Ошибка также не отображается на консоли API.

Это области, которые я использую:

{
"iss":"[email protected]",
"scope":"https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.readonly
https://www.googleapis.com/auth/spreadsheets
https://www.googleapis.com/auth/spreadsheets.readonly",
"aud":"https://accounts.google.com/o/oauth2/token",
"exp":'.($time+3600).',
"iat":'.$time.'
}

Что я делаю неправильно?

1

Решение

Решил проблему

Лист, к которому я пытался получить доступ, требовал совместного доступа с моим идентификатором клиента (адресом электронной почты)
Щелкните правой кнопкой мыши на листе на диске Google и поделитесь с адресом электронной почты.

Опубликовать это для тех, кто с той же проблемой.

2

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

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

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