CURL-post请求
//curl-get
public function curlInfo($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
$data=json_decode($output,true);
return $data;
}
//curl post json
public function curlInfo($url,$post_data){
$post_data=json_encode($post_data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($post_data)
));
//设置获取的信息以文件流的形式返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
$data = curl_exec($curl);
curl_close($curl);
$data=json_decode($data,true);
return $data;
}
function postCurl($url,$data){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec($ch);
if (curl_errno($ch)) {
return curl_error($ch);
}
curl_close($ch);
return $tmpInfo;
}
<?php
set_time_limit(0);
$opt = array(
'http'=>array(
'method'=>"POST",
'header'=>"Content-Type: application/json;",
'content'=>'{"userno":"*******","token":"f4fa360dccda4a7bbf3fce33ef1c7ec6978"}'
)
);
$log="http://sso.eruidev.com/api/anonymlogin";
$context = stream_context_create($opt);
$str = file_get_contents($log,false,$context);
$user=json_decode($str,true);
$url="http://api.eruidev.com/v2/Buyerfiles/bakcustomer";
$headers=array(
'header'=>"Content-Type: application/json\r\n" . "Cookie: eruitoken=".$user['token']."\r\n"
);
//初始化
$curl = curl_init();
//设置抓取的url
curl_setopt($curl, CURLOPT_URL, $url);
//设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_HEADER, 0);
//设置获取的信息以文件流的形式返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
//执行命令
$data = curl_exec($curl);
//关闭URL请求
curl_close($curl);
print_r($data);die;
curl https://api.***.com/uri \
-X POST -H "api: ***" \
-H "APIToken: *wkzwwAXi479hWwyI3noZcMW3WA=" \
-H "DateTime: Wed,23 Sep 2020 11:12:00 CST" \
-H "Content-Type:application/json" \
-d '{"name":123}'