Подтвердить что ты не робот

Как игнорировать неверные ошибки сертификата SSL в Guzzle 5

Это должно быть легко. Я могу найти множество ссылок на то, как это сделать в Guzzle 3, но они не работают в Guzzle 5.

Что я делаю до сих пор:

$this->client = new GuzzleClient(['defaults' => [
    'verify' => 'false'
]]);

Когда я отправляю запрос, хотя получаю эту ошибку:

RequestException in RequestException.php line 51:
SSL CA bundle not found: false

Я не могу найти полезную ссылку на эту ошибку в google. Если бы я мог получить доступ к параметрам завитки, я мог бы попробовать что-то вроде предлагаемого здесь решения (что для Guzzle 3, следовательно, почему это не работает): http://inchoo.net/dev-talk/symfony2-guzzle-ssl-self-signed-certificate/, соответствующий раздел которого:

$req->getCurlOptions()->set(CURLOPT_SSL_VERIFYHOST, false);
$req->getCurlOptions()->set(CURLOPT_SSL_VERIFYPEER, false);
4b9b3361

Ответ 1

Вы должны использовать

$this->client = new GuzzleClient(['defaults' => [
    'verify' => false
]]);

то есть. логическое значение false, а не строка "false"

Документация находится здесь: http://guzzle.readthedocs.org/en/latest/clients.html#verify

Ответ 2

Попробуйте обновленную версию, которая работает:

$this->client = new GuzzleClient(['base_uri' => 'https://api.example.com/', 'verify' => false ]);

или более простая версия:

    $this->client = new GuzzleClient(['verify' => false ]);

Протестировано с версией 6.2-dev.