Désactiver la vérification de certificat SSL avec le client HTTP Symfony
Publié le 20/03/2021 • Actualisé le 20/03/2021
Dans ce bout de code, nous allons voir comment désactiver la vérification de certificat SSL avec le client HTTP Symfony. Quand on fait confiance à la source et qu'on veut éviter l'erreur suivante : SSL peer certificate or SSH remote key was not OK, ça peut être utile (temporairement !). J'utilise ceci dans quelques de mes tests comme ci-dessous. L'astuce est de passer l'option verify_peer
(3ème argument de la fonction request) avec la valeur false
.
<?php
declare(strict_types=1);
namespace App\Tests\External\Controller\Snippet;
use App\Tests\WebTestCase;
use App\Utility\AbstractApi;
use Symfony\Component\HttpClient\Exception\TransportException;
use Symfony\Contracts\HttpClient\HttpClientInterface;
/**
* @see https://ipecho.net
* @see Snippet99Trait::snippet99
* @see AbstractApi::getPublicIp
*/
final class Snippet99Test extends WebTestCase
{
private HttpClientInterface $httpClient;
protected function setUp(): void
{
$this->httpClient = $this->getHttpClientService();
}
/**
* @see Snippet99Trait::snippet99
*/
public function testSnippet99(): void
{
try {
$ip = $this->httpClient->request('GET', 'https://ipecho.net/plain', [
'verify_peer' => false,
])->getContent();
} catch (TransportException) {
$ip = '127.0.0.1';
}
self::assertNotEmpty(filter_var($ip, FILTER_VALIDATE_IP));
}
}
Plus sur Stackoverflow Lire la doc Snippet aléatoire
A vous de jouer !
Ces articles vous ont été utiles ? Vous pouvez m'aider à votre tour de plusieurs manières : (cliquez sur le lien "reply" dans à droite pour me contacter )
- Me remonter des erreurs ou typos.
- Me remonter des choses qui pourraient être améliorées.
- Aimez et repostez !
- Suivez moi sur Bluesky 🦋
- Inscrivez-vous au flux RSS.
- Cliquez sur les boutons Plus sur Stackoverflow pour me faire gagner des badges "annonceur" 🏅.
Merci et à très bientôt sur Strangebuzz ! 😉