php通过curl请求接口的各种设置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xqt15538076006/article/details/83109150

第一:请求头部方式 为json ,获取状态码

function send_http_json($url,$data)
{
    $ch      = curl_init($url);
    $this_header[] = "content-type:application/json";// json方式
    curl_setopt($ch,CURLOPT_HTTPHEADER,$this_header); 
    curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 
    $returnData = curl_exec($ch);
    $httpCode = curl_getinfo($ch,CURLINFO_HTTP_CODE); // 获取返回来的状态码
    return $httpCode;
}

第二 :设置请求方式 、设置头部token

function send_http_json2($url,$data,$token,$method='POST')
{
    $ch      = curl_init($url);
    $this_header[] = "content-type:application/json";
    $this_header[] = 'Token:'.$token;// 请求的头部信息添加token
    curl_setopt($ch,CURLOPT_HTTPHEADER,$this_header); 
    curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    if($method == 'POST') {
        curl_setopt($ch, CURLOPT_POST, 1);
    }elseif($method == 'delete') {
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');// 定义请求方法
    }
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 
    $returnData = curl_exec($ch); 
    return $returnData;
}

第三:使用代理服务器访问接口

function https_request($requestUrl)
{
    $type = 'http';
    $cUrl = curl_init();
    curl_setopt($cUrl, CURLOPT_URL, $requestUrl);
    curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($cUrl, CURLOPT_TIMEOUT, 10);
    curl_setopt($cUrl, CURLOPT_PROXY, '10.0.248.64:3128'); //做代理的ip和端口
    if($type=='https'){ //不使用证书
        curl_setopt($cUrl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($cUrl, CURLOPT_SSL_VERIFYHOST, FALSE);
    }
   $pageContent = curl_exec($cUrl);
   return $pageContent;
}

猜你喜欢

转载自blog.csdn.net/xqt15538076006/article/details/83109150