Ошибки при использовании Google Translate API - PullRequest
0 голосов
/ 25 июня 2018

Я только начинаю изучать API Google Translate и пытаюсь выяснить, как правильно его настроить.

Сначала я пошел на https://console.developers.google.com, где я настроил биллинг, создал проект,зашел в «Учетные данные» и сгенерировал ключ API.

Затем я перешел в командную строку и выполнил шаги по установке через composer, как описано здесь.Мне пришлось использовать composer require google/cloud, потому что composer require google/cloud-translation выдал ошибку.

Это нормально установилось, и теперь я могу видеть каталог C:\wamp64\www\myproject\vendor\google\cloud\Translate.

Затем я попытался создать простой скрипт, подобныйтак:

<?php

require 'vendor/autoload.php';
use Google\Cloud\Translate\TranslateClient;
$translate = new TranslateClient([
    'key' => '{my API key}'
]);

if(isset($_POST["string"])){
    $string = $_POST["string"];
    $result = $translate->translate($string, [
        'target' => 'fr'
    ]);
    echo $result['text'] . "\n";
}

?>

<html>
<head>
</head>
<body>
<form action="test_translate.php" method="POST">
<input type="text" name="string">
<input type="submit">
</form>
</body>
</html>

Но я получаю следующие сообщения об ошибках:

( ! ) Fatal error: Uncaught exception 'Google\Cloud\Core\Exception\ServiceException' with message 'cURL error 60: SSL certificate problem: unable to get local issuer certificate (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)' in C:\wamp64\www\Lifting365\vendor\google\cloud\Core\src\RequestWrapper.php on line 263
( ! ) Google\Cloud\Core\Exception\ServiceException: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) in C:\wamp64\www\Lifting365\vendor\google\cloud\Core\src\RequestWrapper.php on line 263
Call Stack
#   Time    Memory  Function    Location
1   0.0007  242936  {main}( )   ...\test_translate.php:0
2   0.0489  1920632 Google\Cloud\Translate\TranslateClient->translate( )    ...\test_translate.php:13
3   0.0489  1921032 Google\Cloud\Translate\TranslateClient->translateBatch( )   ...\TranslateClient.php:181
4   0.0489  1921536 Google\Cloud\Translate\Connection\Rest->listTranslations( ) ...\TranslateClient.php:246
5   0.0489  1921848 Google\Cloud\Translate\Connection\Rest->send( ) ...\Rest.php:78
6   0.1728  2338192 Google\Cloud\Core\RequestWrapper->send( )   ...\RestTrait.php:96

Как я уже сказал, я новичок в изучении этого, поэтому я не уверен, что делаюэто право, или если я упускаю что-то явно очевидное для некоторых людей.

Любая помощь или предложения с этим будет принята с благодарностью.

1 Ответ

0 голосов
/ 25 июня 2018

Итак, я знал, что это было что-то явно очевидное ....

В сообщении об ошибке говорилось: SSL certificate problem.

И мой каталог был: C:\wamp64\www\myproject

Iу меня есть альфа-версия моего сайта на WAMP, у которой нет сертификата SSL, а затем бета-версия и живая версия, у которых есть сертификаты.

Google требуется сертификат SSL, поэтому скриптработает в моем бета-каталоге, но не локально на WAMP.

...