Maison >développement back-end >tutoriel php >Comment obtenir la méthode de requête https via curl
curl pour obtenir la méthode de requête https
Je travaille sur un projet aujourd'hui et je dois utiliser curl pour obtenir l'API tierce. L'API de l'autre partie est https .
J'ai déjà pu obtenir des requêtes http en utilisant curl, mais lorsque j'ai obtenu des requêtes https aujourd'hui, le message d'erreur suivant est apparu : La vérification du certificat a échoué.
SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Solution, lors de la demande de curl, ajouter
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true); // 从证书中检查SSL加密算法是否存在
curl https Code de requête
<?php /** curl 获取 https 请求 * @param String $url 请求的url * @param Array $data 要發送的數據 * @param Array $header 请求时发送的header * @param int $timeout 超时时间,默认30s */ function curl_https($url, $data=array(), $header=array(), $timeout=30){ $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true); // 从证书中检查SSL加密算法是否存在 curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); $response = curl_exec($ch); if($error=curl_error($ch)){ die($error); } curl_close($ch); return $response; } // 调用 $url = 'https://www.example.com/api/message.php'; $data = array('name'=>'fdipzone'); $header = array(); $response = curl_https($url, $data, $header, 5); echo $response; ?>
Cet article explique comment obtenir la méthode de requête https via curl Pour plus de contenu connexe, veuillez faire attention au site Web chinois php.
Recommandations associées :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!