Ошибка разработки Google Glass: (403) Доступ не настроен. Пожалуйста, используйте Google Developers Console, чтобы активировать API для вашего проекта.

Я использую PHP-версию комплекта разработчика Google Glass. Настройте все в соответствии с инструкциями примера кода. API/учетные данные в порядке, биллинг учетной записи настроен, API-интерфейс Mirror добавлен в проект, но после того, как я разрешаю приложение, я получаю следующую ошибку:

An error ocurred: Error calling POST 
https://www.googleapis.com/mirror/v1/timeline?key=xxxxxx 
(403) Access Not Configured. 
Please use Google Developers Console to activate the API for your project.

Я добавил Mirror API и активировал и настроил Billing, поэтому понятия не имею, почему я получаю сообщение об ошибке. Тестирование приложения через Glass Explorer работает нормально.


person Metablocks Corp    schedule 18.01.2014    source источник


Ответы (2)


Известно, что API Google ведут себя неправильно, когда вы предоставляете как учетные данные OAuth2, так и ключ API. Кроме того, поскольку вам нужно использовать OAuth2 для доступа к Mirror API, key=xxxxx в любом случае не нужен.

Если вы используете клиентскую библиотеку API Google для PHP, вы можете просто удалить следующую строку из своего кода:

 $client->setDeveloperKey($key);

Не совсем уверен, что это вызывает вашу проблему, но я сталкивался с подобными проблемами в других API Google.

person Scarygami    schedule 18.01.2014
comment
Вау.. это сработало, кто бы мог подумать! Прокомментировал это из mirror-client.php и теперь работает как ветер. Эх, половина субботы потрачена впустую. - person Metablocks Corp; 19.01.2014
comment
У меня такая же ошибка, но это не решило ее. У меня все еще есть 403 после комментирования //общедоступной функции setDeveloperKey($key) {$this-›key = $key;} в google-api-php-client/src. - person StanleyZheng; 19.01.2014
comment
stanzheng - вы 1) убедитесь, что Mirror API был добавлен в ваш список API и 2) убедитесь, что вы добавили платежную информацию в свою учетную запись (не уверен, что это необходимо, но читал в местах, что это может иметь какое-то значение) с этим) - person Metablocks Corp; 19.01.2014
comment
Большое спасибо Scarygami. Это решило мою проблему. Google действительно нужно обновить свои ужасные документы. - person Jonathan; 06.03.2014
comment
Это тоже решило мою проблему. Мне любопытно, почему Google выпустит стартовый проект php для очков Google и не решит эту проблему? - person jyoseph; 07.03.2014

В консоли API Google для вашего проекта (https://code.google.com/apis/console/)

Убедитесь, что ваш «Доступ к общедоступному API» или «Ключ для серверного приложения» разрешает IP-адрес вашего сервера.

Также убедитесь, что у вас есть правильные «URI перенаправления», если вам отказали, посмотрите свои журналы php, у меня было это:

PHP Fatal error:  Uncaught exception 'Google_ServiceException' with message 'Error calling GET https://www.googleapis.com/mirror/v1/timeline?maxResults=3&key=: (403) Access Not Configured. Please use Google Developers Console to activate the API for your project.'    

используйте ваш $base_url + /oauth2callback.php, чтобы узнать правильный URI перенаправления.

Мне удалось решить проблему, добавив IP-адрес и URI REDIRECT, и он работает как на моем локальном компьютере, так и на сервере. (тот же код, тот же ключ)

PS: хочу поблагодарить Scarygami за отключение $client->setDeveloperKey($key); помог найти решение.

person Drace    schedule 19.01.2014
comment
Итак, в Public API Access у вас есть 2 ключа или 1 ключ? У меня только один (Ключ для браузерных приложений). Любопытно, если у вас есть 2 ключа или вы используете ключ сервера только вместо браузера - person Metablocks Corp; 19.01.2014
comment
да, доступ к публичному API имеет 2 ключа, идентификатор клиента и секрет клиента. Принимая во внимание, что при доступе к публичному API - ключ для серверных приложений имеет 1 ключ, ваш ключ API. Это решило мою проблему, надеюсь, это поможет вам начать работу! - person Drace; 19.01.2014