GCP: Vision API: ошибка сертификации - PullRequest
0 голосов
/ 13 февраля 2020

Я использую GCP Vision API почти последние 3 года и до нескольких дней, прежде чем он работал правильно. Но с прошлой пары дней я начал получать ошибку ниже.

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Не уверен, почему это терпит неудачу. Нужна помощь, чтобы решить это. Иметь действующий платежный аккаунт и учетные данные OAuth json.

AnnotateImageRequest request = new AnnotateImageRequest()
                .setImage(new Image().encodeContent(image))
                .setFeatures(ImmutableList.of(new Feature().setType("LOGO_DETECTION").setMaxResults(MAX_RESULTS),
                                            new Feature().setType("IMAGE_PROPERTIES").setMaxResults(MAX_RESULTS),
                                            new Feature().setType("TEXT_DETECTION").setMaxResults(MAX_RESULTS)));
        Vision.Images.Annotate annotate = vision.images()
                .annotate(new BatchAnnotateImagesRequest().setRequests(ImmutableList.of(request)));

        BatchAnnotateImagesResponse batchResponse = annotate.execute();

Получение вышеуказанной ошибки в последней строке.

1 Ответ

0 голосов
/ 14 февраля 2020

Ошибка связана с SSL. Это означает, что Java попытался открыть соединение SSL, но не смог найти цепочку сертификатов, подтверждающих сертификат сервера Google. Это не проблема, связанная с Cloud Vision c.

Google управляет собственным центром сертификации для веб-сайтов и служб Google. Необходимые root сертификаты, которым нужно доверять для доступа к службам Google, можно получить из https://pki.goog/roots.pem

Можете ли вы убедиться, что все эти root сертификаты установлены в доверенном хранилище сертификатов? ?

Возникает ли проблема, если вы вызываете другие API Google точно так же, как вы вызываете API Cloud Vision?

На ваших устройствах установлены какие-либо прокси-серверы или брандмауэры, которые могут помешать установке SSL соединения? Существуют ли какие-либо персональные брандмауэры, сетевое оборудование или программное обеспечение, которые могут блокировать этот трафик c? В частности, порт 443 должен быть включен для трафика с шифрованием SSL c.

Можете ли вы воспроизвести проблему на других устройствах? Или на устройствах, подключенных к разным сетям?

Правильно ли установлены системные часы на запрашивающем компьютере? Если часы выключены, компьютер может ошибочно считать, что срок действия сертификата истек или недействителен.

Можно ли использовать Google API Explorer, чтобы убедиться, что API Cloud Vision работает для членов вашего домена? Например, любой пользователь домена, в котором установлена ​​Cloud Vision, должен перейти по этой ссылке https://cloud.google.com/vision/docs/drag-and-drop и протестировать API.

...