ssl — CloudConvert: Одноранговый сертификат не может быть аутентифицирован с помощью известных сертификатов CA.

Я пытаюсь использовать CloudConvert API в PhP и я получаю следующее ошибка:

CURLE_SSL_CACERT (60)
Peer certificate cannot be authenticated with known CA certificates.

Читая их исходный код API, я вижу, что они используют GuzzleClient для запросов. Я предполагаю, что если я просто отключу проверку SSL на cURL, это будет работать. Я просто не знаю, как это сделать во всем мире. Я знаю, как это сделать по запросу: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); но это не помогает мне, так как у меня нет контроля над тем, как CloudConvert выполняет свои запросы API.

У кого-нибудь есть идеи как это решить? Я запускаю свой проект, используя MAMP и macOS Sierra.

Спасибо за любую помощь

0

Решение

Только что нашел решение. Как я уже говорил ранее, API-интерфейс CloudConvert может использовать клиент Guzzle в конструкторе, поэтому я создаю клиент и устанавливаю для него сертификат:

    $client = new \GuzzleHttp\Client(['verify' => $this->config->application->sslDir . "cacert.pem" ]);
$api = new Api("xxxxxxx", $client);

$api->convert([
'inputformat' => 'html',
'outputformat' => 'docx',
'input' => 'upload',
'file' => fopen('/Users/andre/Projects/x/Quote.html', 'r'),
])
->wait()
->download('/Users/andre/Projects/x/Quote.docx');
0

Другие решения

Других решений пока нет …