整理使用curl調用遠程接口方法

最近在二次開發一個Yii框架項目,因爲這個項目過於老舊,沒法安裝yiisoft/yii2-httpclient插件,因此只有使用curl原生實現調用遠程接口json

這裏我整合了curl方法,來實現get和post傳參調用遠程接口,獲取接口數據的方法,具體方法以下:yii2

/**
 * curl
 */
public static function httpRequest($url, $format = 'get', $data = null){
    //設置頭信息
    $headerArray =array("Content-type:application/json;","Accept:application/json");
    $curl=curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    if ($format == 'post') {
        //post傳值設置post傳參
        curl_setopt($curl, CURLOPT_POST, 1);
        if ($data) {
            $data  = json_encode($data);
            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
        }
    }
    curl_setopt($curl, CURLOPT_TIMEOUT,10);   //設置超時時間

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
    $data=json_decode(curl_exec($curl), true);
    curl_close($curl);
    //返回接口返回數據
    return $data;
}

調用如上的方法就能夠實現調用遠程接口app

相關文章
相關標籤/搜索