本文主要和大家分享php中curl获取请求头和响应头,希望能帮助到大家。
1.从curl中获取响应头
$ocurl = curl_init();
// 设置请求头, 有时候需要,有时候不用,看请求网址是否有对应的要求
$header[] = "content-type: application/x-www-form-urlencoded";
$user_agent = "mozilla/5.0 (windows nt 6.1) applewebkit/537.36 (khtml, like gecko) chrome/33.0.1750.146 safari/537.36";
curl_setopt($ocurl, curlopt_url, $surl);
curl_setopt($ocurl, curlopt_httpheader,$header);
// 返回 response_header, 该选项非常重要,如果不为 true, 只会获得响应的正文
curl_setopt($ocurl, curlopt_header, true);
// 是否不需要响应的正文,为了节省带宽及时间,在只需要响应头的情况下可以不要正文
curl_setopt($ocurl, curlopt_nobody, true);
// 使用上面定义的 ua
curl_setopt($ocurl, curlopt_useragent,$user_agent);
curl_setopt($ocurl, curlopt_returntransfer, 1 );
// 不用 post 方式请求, 意思就是通过 get 请求
curl_setopt($ocurl, curlopt_post, false);
$scontent = curl_exec($ocurl);
// 获得响应结果里的:头大小
$headersize = curl_getinfo($ocurl, curlinfo_header_size);
// 根据头大小去获取头信息内容
$header = substr($scontent, 0, $headersize);
curl_close($ocurl);
2.从curl中获取请求头
$ocurl = curl_init();
curl_setopt($ocurl, curlopt_url, "https://117.28.240.235:8002/ipcc/agent/login");
curl_setopt($ocurl, curlopt_httpheader, $header);
//关闭https验证
curl_setopt($ocurl, curlopt_ssl_verifypeer, false);
curl_setopt($ocurl, curlopt_ssl_verifyhost, false);
//至关重要,curlinfo_header_out选项可以拿到请求头信息
curl_setopt($ocurl, curlinfo_header_out, true);
curl_setopt($ocurl, curlopt_returntransfer, 1);
curl_setopt($ocurl, curlopt_post, 1);
curl_setopt($ocurl, curlopt_postfields, $bodystr);
$scontent = curl_exec($ocurl);
//通过curl_getinfo()可以得到请求头的信息
$a=curl_getinfo($ocurl);
相关推荐:
php发送请求头和接收打印请求头
php curl模拟jquery的ajax请求头添加可显示在_server中的参数
php curl修改网站请求头
以上就是php中curl获取请求头和响应头的详细内容。