curl模拟浏览器请求
测试接口为网上获取的,用于上传图片到京东、新浪、百度等,能够获取到上传图片后的地址,据说使用该地址请求图片速度超级快。
NO1:提供接口如下:
a:https://apis.yum6.cn/api/5bd7f16aa33d7 --sogo
b:https://apis.yum6.cn/api/5bd828881f92b --baidu
c:https://apis.yum6.cn/api/5bd44dc94bcfc --sina
NO2:curl代码如下:
function getUseImg($url) { // 模拟获取内容函数
$agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)"; //重要步骤
//第一步:创建curl
$ch = curl_init();
//第二步:设置curl
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //禁止服务器端校检SSL证书
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);//数据的请求
curl_setopt($ch, CURLOPT_USERAGENT, $agent ); // 模拟用户使用的浏览器
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //以文档流的形式返回数据
//第三步:执行curl
$output = curl_exec($ch);
//第四步:关闭curl
curl_close($ch);
//把$output当做返回值返回
return $output;
}
参数说明 $url即为NO1中提供的接口链接,此处为GET请求,参数需自行拼接
NO3:参数处理,接口经测试需提供如下
a:token值,此处使用的是:'f07b711396f9a05bc7129c4507fb65c5'
b:img值,即需要提供的原始图片链接,此处可以在网上随便整张图片链接,如百度图片链接:
http://pic40.nipic.com/20140412/18428321_144447597175_2.jpg
c:整合url及调用
$url = https://apis.yum6.cn/api/5bd44dc94bcfc?token=f07b711396f9a05bc7129c4507fb65c5&img=http://pic40.nipic.com/20140412/18428321_144447597175_2.jpg;
$ret = getUseImg($url);
返回数据自行处理即可;