Curl Bearer认证正确操作姿势
2021-04-24 08:51:01
$url = "https://www.aaa.com/bbb/getInfoByCollectionNo?collectionNo=".urlencode($collectionNo);
// $get_para = json_encode(array("collectionNo"=>'3'));
$authorization = 'Authorization: Bearer '.$token;
$reader_info = curl($url,'',$authorization);
var_dump($reader_info);
function curl($url,$post_para='',$authorization='')
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_URL, $url . $query_string);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
if($post_para!='')
{
curl_setopt($ch, CURLOPT_POST, 1);
// curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS,$post_para);//"postvar1=value1&postvar2=value2&postvar3=value3"
// curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json',$authorization));
// var_dump($post_para);exit;
}
else {
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
}
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json',$authorization));
$output = curl_exec($ch);
// print_r($output);
// echo $authorization;
curl_close($ch);
return $output;
}
20210720补充:
$requestData = json_encode(array("aaa"=>[$sjh],"bbb"=>"111222333","ccc"=>'test'));
$result = CurlPost($url,$requestData,$token);
function CurlPost($url="" ,$requestData=array(),$token){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//普通数据
curl_setopt($curl, CURLOPT_POSTFIELDS, ($requestData));
$authorization = 'access-token:'.$token;
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type:application/json',$authorization));
$res = curl_exec($curl);
//$info = curl_getinfo($ch);
curl_close($curl);
return $res;
}
function CurlGet($url=""){
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
// 为保证第三方服务器与微信服务器之间数据传输的安全性,所有微信接口采用https方式调用,必须使用下面2行代码打开ssl安全校验。
// 如果在部署过程中代码在此处验证失败,请到 http://curl.haxx.se/ca/cacert.pem 下载新的证书判别文件。
// curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
// curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_URL, $url);
$res = curl_exec($curl);
curl_close($curl);
return $res;
}
// $get_para = json_encode(array("collectionNo"=>'3'));
$authorization = 'Authorization: Bearer '.$token;
$reader_info = curl($url,'',$authorization);
var_dump($reader_info);
function curl($url,$post_para='',$authorization='')
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_URL, $url . $query_string);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
if($post_para!='')
{
curl_setopt($ch, CURLOPT_POST, 1);
// curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS,$post_para);//"postvar1=value1&postvar2=value2&postvar3=value3"
// curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json',$authorization));
// var_dump($post_para);exit;
}
else {
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
}
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json',$authorization));
$output = curl_exec($ch);
// print_r($output);
// echo $authorization;
curl_close($ch);
return $output;
}
20210720补充:
$requestData = json_encode(array("aaa"=>[$sjh],"bbb"=>"111222333","ccc"=>'test'));
$result = CurlPost($url,$requestData,$token);
function CurlPost($url="" ,$requestData=array(),$token){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//普通数据
curl_setopt($curl, CURLOPT_POSTFIELDS, ($requestData));
$authorization = 'access-token:'.$token;
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type:application/json',$authorization));
$res = curl_exec($curl);
//$info = curl_getinfo($ch);
curl_close($curl);
return $res;
}
function CurlGet($url=""){
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
// 为保证第三方服务器与微信服务器之间数据传输的安全性,所有微信接口采用https方式调用,必须使用下面2行代码打开ssl安全校验。
// 如果在部署过程中代码在此处验证失败,请到 http://curl.haxx.se/ca/cacert.pem 下载新的证书判别文件。
// curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
// curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_URL, $url);
$res = curl_exec($curl);
curl_close($curl);
return $res;
}