Я пытался создать простое веб-приложение, которое будет анализировать изображение с помощью API компьютерного зрения Microsoft. Мне не удалось получить правильный вывод в приложении, но оно отлично работает на тестовых конечных точках (API выбран из rapidapi.com).
Вот код:
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="POST" enctype="multipart/form-data">
<input type="file" name="image" required>
<input type="submit" name="submit">
</form>
<?php
if(isset($_POST['submit'])){
$curl = curl_init();
$cfile = new CURLFile($_FILES['image']['tmp_name'], $_FILES['image']['type'], $_FILES['image']['name']);
$data = array('myimage' => $cfile);
curl_setopt_array($curl, array(
CURLOPT_URL => "https://microsoft-azure-microsoft-computer-vision-v1.p.rapidapi.com/analyze?visualfeatures=Categories%252CTags%252CColor%252CFaces%252CDescription",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 300,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $data,
CURLOPT_HTTPHEADER => array(
"content-type: multipart/form-data",
"x-rapidapi-host: microsoft-azure-microsoft-computer-vision-v1.p.rapidapi.com",
"x-rapidapi-key: b57a0cbabamshcc6da139552c381p1c550ajsn17605aa32e55"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
}
?>
И вывод это: {"code":"NotSupportedVisualFeature","requestId":"0b1ed1a6-afff-43e2-ae50-820d74c9b8fd","message":"Specified feature type is not valid"}