Computer Vision API - v1.0 При распознавании рукописного текста возвращается пустой ответ - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь начать использовать API компьютерного зрения, но получаю пустой ответ. Мой запрос в php (как экспортировано почтальоном) выглядит так:

<?php
$request = new HttpRequest();
$request->setUrl('https://westcentralus.api.cognitive.microsoft.com/vision/v1.0/recognizeText');
$request->setMethod(HTTP_METH_POST);
$request->setQueryData(array(
  'language' => 'en',
  'handwriting' => 'true'
));

$request->setHeaders(array(
  'Postman-Token' => '442d04f7-49a0-4262-9d0f-666fe5240cc7',
  'Cache-Control' => 'no-cache',
  'Content-Type' => 'application/octet-stream',
  'Ocp-Apim-Subscription-Key' => 'KEY'
));

try {
  $response = $request->send();
  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}

Приведенный выше код отлично работает с конечной точкой ocr!

Файл передается в двоичном виде с помощью Почтальона.

Редактировать: я также попытался скопировать / вставить код отсюда: https://docs.microsoft.com/en-gb/azure/cognitive-services/computer-vision/quickstarts/php#ocr-php-example-request, и если я изменяю конечную точку ocr на признать текст, я также получаю пустой ответ!

1 Ответ

0 голосов
/ 09 мая 2018

В отличие от других конечных точек Computer Vision, RecognizeText является асинхронной операцией. Если исключить проблему с изображением, вы получите ответ 202 вместо обычного ответа 200. 202 ответа обычно содержат пустое тело ответа. В этом конкретном случае вы можете найти URL, по которому вы можете запросить завершение задачи. Документация здесь . Заголовок, который вы ищете, это Operation-Location.

...