Google Cloud Vision APIをプライベートVPSでホストされているPHPアプリケーションで問題なく使用しています。私はアプリをGoogle AppEngineに移行していて、今問題にぶつかっています。PHP App Engine上のGoogle Cloud Vision API
私はAPIにCURL投稿を使用していますが、AppEngineで失敗しています。請求が有効になっており、他のカールリクエストは問題なく動作します。誰かが、googleapis.comへの呼び出しがAppEngineでは動作しないこと、APIに別の方法でアクセスする必要があると述べました。私はそれを確認するためのオンラインリソースを見つけることができません。
以下は私のコードですが、CURLエラー#7が返され、ホストへの接続に失敗しました。
$request_json = '{
"requests": [
{
"image": {
"source": {
"gcsImageUri":"gs://bucketname/image.jpg"
}
},
"features": [
{
"type": "LABEL_DETECTION",
"maxResults": 200
}
]
}
]
}';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://vision.googleapis.com/v1/images:annotate?key='.GOOGLE_CLOUD_VISION_KEY);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type: application/json'));
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $request_json);
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($status != 200) {
die("Error: $status, response $json_response, curl_error " . curl_error($curl) . ', curl_errno ' . curl_errno($curl));
}
curl_close($curl);
echo '<pre>';
echo $json_response;
echo '</pre>';
Googleの所有サイトに接続するためにcURLを使用することはできません。 (それはリモートソケットAPIの制限です) –