业务需要下载到微信头像到本地,先前一直使用file_get_content来下载,,忽然发现不行,返回的是false...
个人猜想要模拟真实点的才让下载..
直接来看代码(我是使用了YurunHttp这个类库):
YurunHttp下载地址:http://git.oschina.net/yurunsoft/YurunHttp
public function getUrlStr($url) {
tool()->classs("curl/HttpRequest");
tool()->classs("curl/HttpResponse");
$request = new \HttpRequest();
$response = $request
->header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8")
->header("Accept-Encoding", "gzip, deflate, sdch")
->header("Accept-Language", "zh-CN,zh;q=0.8")
->header("Cache-Control:", "max-age=0")
->header("Connection", "keep-alive")
->header("Host", "wx.qlogo.cn")
->header("If-Modified-Since", "Fri, 07 Oct 2016 10:05:15 GMT")
->header("Referer", "http://www.baidu.com")
->header("Upgrade-Insecure-Requests", "1")
->header("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36")
->get($url);
return $response->body;
}
模拟之后,终于返回到他的头像回来了