放在哪里 API 为 PHP 输入 Google Cloud Vision

Where to put API Key in Google Cloud Vision for PHP

我想在家庭照片上使用 Google Cloud Vision API。我在我的 GCP 帐户上激活了 API,收到了一个 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": "The request is missing a valid API key.", "status": "PERMISSION_DENIED" } }.

更新:感谢 Dan D. 提供的答案,我添加了以下行:

putenv("GOOGLE_APPLICATION_CREDENTIALS=book.json");

我认为要使用 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 文件。 希望这有帮助。