在后臺程序中經(jīng)常會從本系統(tǒng)請求其他系統(tǒng)的數(shù)據(jù),而php中的curl一般都需要好幾段代碼來實現(xiàn),這次我們把curl的功能封裝起來以便后續(xù)使用。
function Curl_request($url, $method = 'POST', $header = ["Content-type:application/json;charset=utf-8", "Accept:application/json"], $data = [])
{
$method = strtoupper($method);
//初始化
$ch = curl_init();
//設(shè)置橋接(抓包)
//curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8888');
//設(shè)置請求地址
curl_setopt($ch, CURLOPT_URL, $url);
// 檢查ssl證書
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// 從檢查本地證書檢查是否ssl加密
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, $url);
//設(shè)置請求方法
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
//設(shè)置請求頭
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
//設(shè)置請求數(shù)據(jù)
if (!empty($data)) {
// var_dump($data);die;
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
}
//設(shè)置curl_exec()的返回值以字符串返回
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
curl_close($ch);
return $res;
}
根據(jù)上述代碼就可以直接調(diào)用函數(shù)來實現(xiàn)請求接口,其中url傳請求地址,method傳請求方式默認(rèn)為post,header傳請求頭信息,data傳內(nèi)容。
再將接口進(jìn)行二次封裝,固定好ip和header,這樣我們再后續(xù)調(diào)用接口的時候就會方便很多