最近在二次开发一个 Yii 框架我的项目,因为这个我的项目过于老旧,无奈装置 yiisoft/yii2-httpclient 插件,所以只有应用 curl 原生实现调用近程接口
这里我整合了 curl 办法,来实现 get 和 post 传参调用近程接口,获取接口数据的办法,具体方法如下:
/**
* 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_RETURNTRANSFER, 1);
curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
$data=json_decode(curl_exec($curl), true);
curl_close($curl);
// 返回接口返回数据
return $data;
}
调用如上的办法就能够实现调用近程接口