PHP使用CURL攜帶ssl證書和祕鑰請求接口代碼

在使用PHP請求某些接口的時候通常會使用到CURL的方式,不管是http還是https都是支持的,如果請求https遇到的問題可能比較多一點,可參考《PHP使用curl請求https站點的常見錯誤及解決方案》,另外有些接口可能會要求攜帶證書請求接口,例如微信支付的某些接口需要使用證書來請求,那如何實現呢?其實也不難,下面給出PHP代碼:

function postData($url,$postfields){

   $ch = curl_init();
   $params[CURLOPT_URL] = $url;    //請求url地址
   $params[CURLOPT_HEADER] = false; //是否返回響應頭信息
   $params[CURLOPT_RETURNTRANSFER] = true; //是否將結果返回
   $params[CURLOPT_FOLLOWLOCATION] = true; //是否重定向
   $params[CURLOPT_POST] = true;
   $params[CURLOPT_POSTFIELDS] = $postfields;
   $params[CURLOPT_SSL_VERIFYPEER] = false;
   $params[CURLOPT_SSL_VERIFYHOST] = false;
   //以下是證書相關代碼
    $params[CURLOPT_SSLCERTTYPE] = 'PEM';
    $params[CURLOPT_SSLCERT] = '證書路徑';
    $params[CURLOPT_SSLKEYTYPE] = 'PEM';
    $params[CURLOPT_SSLKEY] = '祕鑰路徑';

     curl_setopt_array($ch, $params); //傳入curl參數
     $content = curl_exec($ch); //執行
     curl_close($ch); //關閉連接
     return $content;
}

轉載:https://www.liminghulian.com/article/73

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章