Где разместить ключ API в Google Cloud Vision для PHP - PullRequest
0 голосов
/ 10 ноября 2018

Я хочу использовать Google Cloud Vision API на семейной фотографии. Я активировал API в своей учетной записи GCP, получил ключ API, но я не знаю, куда мне его вставить. Вот мой код:

<?
require 'vendor/autoload.php';
use Google\Cloud\Vision\VisionClient;
$vision = new VisionClient();
$image = $vision->image(
    fopen('data/family_photo.jpg', 'r'),
    ['faces']
);
$annotation = $vision->annotate($image);
var_dump($annotation);
die();

?>

Я получаю следующую ошибку: «error»: {«code»: 403, «message»: «В запросе отсутствует действительный ключ API.», «Status»: «PERMISSION_DENIED»}}.

Обновление: благодаря предоставленному ответу Дэна Д. я добавил следующую строку:

putenv("GOOGLE_APPLICATION_CREDENTIALS=book.json");

1 Ответ

0 голосов
/ 10 ноября 2018

Я думаю, что для использования Google Cloud PHP SDK вам необходимо использовать служебную учетную запись. Как указано здесь (https://github.com/googleapis/google-cloud-php/blob/master/AUTHENTICATION.md),, вам потребуется настройка переменной среды, которая указывает на файл JSON с учетными данными.

$ export GOOGLE_APPLICATION_CREDENTIALS=<path_to_service_account_file>

Также вы можете следовать этому руководству (https://cloud.google.com/video-intelligence/docs/common/auth), чтобы создать учетную запись службы и сгенерировать файл JSON. Надеюсь, это поможет.

...