php中curl請求https介面資料

2021-08-30 21:53:21 字數 1536 閱讀 7169

在網上的案例中,curl的普遍寫法如下

$curl = curl_init();

curl_setopt($curl,curlopt_url,'');

curl_setopt($curl, curlopt_returntransfer, 1);//設定直接顯示資料,瀏覽器直接顯示,不解析資料

$data=curl_exec($curl);

curl_close($curl);

var_dump($data);

如上就可以得到乙個簡單的http的請求,但如果的是https的位址就有所不同,因為證書的原因,所以設定忽略證書的驗證。不忽略直接呼叫的,curl_exec()返回boolean的false。

$curl = curl_init();

curl_setopt($curl,curlopt_url,'');

curl_setopt($curl, curlopt_returntransfer, 1);

curl_setopt($curl, curlopt_ssl_verifypeer, false);//不驗證

curl_setopt($curl, curlopt_ssl_verifyhost, false);//不驗證主機

$data=curl_exec($curl);

curl_close($curl);

var_dump($data);

輸入需要驗證則需要設定證書,加入以下設定(參考網友的),單純的呼叫介面的就只用上面的**即可

curl_setopt($curl, curlopt_cainfo,  '/cert/ca.crt');

curl_setopt($curl, curlopt_sslcert, '/cert/cert.pem');

curl_setopt($curl, curlopt_sslcertpasswd, 'password');

$curl = curl_init();

curl_setopt($curl,curlopt_url,'');

curl_setopt($curl, curlopt_post, 1);

curl_setopt($curl, curlopt_header, 1);//顯示響應頭資訊

var_dump($data);

post把xml資料編碼成檔案型的二進位制資料。

curl 獲取 https 請求方法

使用curl如果想發起的https請求正常的話有2種做法 方法一 設定為不驗證證書和host 示例 url curl curl init curl setopt curl,curlopt url,url curl setopt curl,curlopt header,1 curl setopt cu...

用curl發起https請求

使用curl發起https請求 使用curl如果想發起的https請求正常的話有2種做法 方法一 設定為不驗證證書和host。在執行curl exec 之前。設定option ch curl init curl setopt ch,curlopt ssl verifypeer,false curl ...

http 使用curl發起https請求

今天乙個同事反映,使用curl發起https請求的時候報錯 ssl certificate problem,verify that the ca cert is ok.details error 14090086 ssl routines ssl3 get server certificate ce...