导航:首页 > 编程语言 > phpcurl头信息

phpcurl头信息

发布时间:2022-09-10 06:18:11

⑴ 在 php curl返回

给你个我写的curl方法。

/**
*curl模拟提交
*@param string $url 网址
*@param array/string $opt 提交参数
*@param string &$header 取回的头信息
*@param string $redirect 是否重定向
*@param boolean $ssl 验证https证书
*@return [type] 返回信息
*/
functioncurl($url,$opt='GET',&$header=null,$redirect=true,$ssl=false){

//初始化
$ch=curl_init($url);

//配置设置
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,$ssl);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,$ssl);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,$redirect);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); #返回结果
curl_setopt($ch,CURLOPT_HEADER,true); #显示协议头

if(is_array($opt)){

//转小写
$opt=array_change_key_case($opt,CASE_LOWER);

//POST
if(isset($opt['type'])&&strtoupper($opt['type'])=='POST'){
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,(isset($opt['data'])?$opt['data']:''));
}

//User-Agent
if(array_key_exists('ua',$opt))
curl_setopt($ch,CURLOPT_USERAGENT,$opt['ua']);

//Header
if(array_key_exists('header',$opt)){
curl_setopt($ch,CURLOPT_HTTPHEADER,(array)$opt['header']);
}

//Cookie
if(array_key_exists('cookie',$opt))
curl_setopt($ch,CURLOPT_COOKIE,$opt['cookie']);

//Referer
if(array_key_exists('referer',$opt))
curl_setopt($ch,CURLOPT_REFERER,$opt['referer']);

}else{

//仅POST
if(strtoupper((string)$opt)=='POST')
curl_setopt($ch,CURLOPT_POST,true);

}

$result=curl_exec($ch);

if(curl_errno($ch)){
$result=curl_error($ch);
}else{

//获取头长度
$length=curl_getinfo($ch,CURLINFO_HEADER_SIZE);

//取出头信息
$header=substr($result,0,$length);

//去掉头信息
$result=substr($result,$length);

}

//释放
curl_close($ch);

return$result;

}

⑵ 如何在php中获取curl请求的请求头信息及相应头信息

oCurl=curl_init();

//设置请求头

$header[]="Content-type:application/x-www-form-urlencoded";

$user_agent="Mozilla/5.0(WindowsNT6.1)AppleWebKit/537.36(KHTML,likeGecko)Chrome/33.0.1750.146Safari/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);

//使用上面定义的uacurl_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);

⑶ php curl中CURLOPT_HTTPHEADER 这个参数的含义

php curl中CURLOPT_HTTPHEADER 这个参数的含义是:CURLOPT_HTTPHEADER 一个用来设置HTTP头字段的数组。Content-Type 表示后面的文档属于什么MIME类型。charset表示浏览器可接受的字符集。

HTTP头Servlet默认为text/plain,但通常需要显式地指定为text/html。由于经常要设置Content-Type,因此HttpServletResponse提供了一个专用的方法setContentType。

HTTP请求头的部分类型:

1、Accept:浏览器可接受的MIME类型。

2、Accept-Charset:浏览器可接受的字符集。

3、Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。

4、Connection:表示是否需要持久连接。如果Servlet看到这里的值为“Keep-Alive”,或者看到请求使用的是HTTP 1.1(HTTP 1.1默认进行持久连接),它就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显着地减少下载所需要的时间。

5、Content-Length:表示请求消息正文的长度。

6、Cookie:这是最重要的请求头信息之一。

(3)phpcurl头信息扩展阅读:

PHP中的CURL函数库(部分):

1、curl_setopt_array — 为cURL传输会话批量设置选项

2、curl_setopt — 设置一个cURL传输选项

3、curl_close — 关闭一个cURL会话

4、curl__handle — 复制一个cURL句柄和它的所有选项

5、curl_errno — 返回最后一次的错误号

6、curl_error — 返回一个保护当前会话最近一次错误的字符串

7、curl_escape — 使用 URL 编码给定的字符串

在实际的使用当中,使用得最多的函数是curl_setopt — 设置一个cURL传输选项说明:bool curl_setopt ( resource $ch , int $option , mixed $value )其中,ch 由 curl_init() 返回的 cURL 句柄。option 表示的是需要设置的CURLOPT_XXX选项。

option的可选参数:

1、CURLOPT_BUFFERSIZE 每次获取的数据中读入缓存的大小,但是不保证这个值每次都会被填满。在cURL 7.10中被加入。

2、CURLOPT_CLOSEPOLICY 不是CURLCLOSEPOLICY_LEAST_RECENTLY_USED就是CURLCLOSEPOLICY_OLDEST,还存在另外三个CURLCLOSEPOLICY_,但是cURL暂时还不支持。

3、CURLOPT_CONNECTTIMEOUT 在发起连接前等待的时间,如果设置为0,则无限等待。

⑷ php 如何查看使用curl模拟的信息

哥们。我认为是做不到的。。咱们做个假设

firebug能抓到原始信息是因为http请求是由浏览器发出的,浏览器是在本地,你当然能抓到包了,而curl是有apache服务端的php发出的,一个是在服务端一个是在客户端,怎么抓?

再说个简单的例子就是你的PHP程序放在 机房,你浏览器在你家,当然抓不到服务器发出去的包,除非你是黑客~~
最简单的办法就是把返回值echo

⑸ 如何在php中获取curl请求的请求头信息及相应头信息

<?php
$url='http://demo.zjmainstay.cn';
$ch=curl_init($url);
curl_setopt($ch,CURLOPT_HEADER,true);//返回头信息
curl_setopt($ch,CURLOPT_NOBODY,true);//不返回内容
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//返回数据不直接输出
$content=curl_exec($ch);//执行并存储结果
curl_close($ch);
echo$content;

更多关于phpcURL的内容,请参考我的博客《PHPcURL应用》
http://www.zjmainstay.cn/php-curl

⑹ 你好,求教个php curl获取header和body的问题。我想一次分别获取header里的session和显示图片内容。

session是不可以获取的,只可以得到COOKIE是在HEADER里

header头和内容之间有一个空行分隔,你可以依此把此把头信息截掉,只把内容保存成图片文件

⑺ curl命令能把HTTP头信息打印出来么

不知道你是不是要这个:curl-Ihttp://www.zjmainstay.cn

可以使用mancurl命令查看curl的用法。

phpcurl的话可以参考我的博客《PHPcURL实现模拟登录与采集使用方法详解》
http://www.zjmainstay.cn/php-curl

⑻ php curl提交头部信息错误

CURLOPT_HTTPHEADER:

一个用来设置HTTP头字段的数组。使用如下的形式的数组进行设置:array('Content-type: text/plain', 'Content-length: 100')

<?php
functiongetwebcontent($url){
$ch=curl_init();
$data=array(
'ap'=>'2',
'c1'=>'4',
'c2'=>'4',
'g_w'=>'0100',
'dd'=>'0',
'h'=>'8',
'iasign'=>'bedvkt2gyd9vkgrx',
'pp'=>'200',
);
$headers['X-rvt']='';
$headers['Referer']='http://www.benmi.com/IA.html?c1=4&c2=4&g_w=0100&h=1';
$headers['Accept-Language']='zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3';
$headers['Cookie']='iasign=bedvkt2gyd9vkgrx;';
$timeout=20;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_VERBOSE,0);
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,0);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,0);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
$contents=curl_exec($ch);
curl_close($ch);
return$contents;
}
$c=getwebcontent('http://www.benmi.com/Ashx/IAPageAjax.ashx');
print($c);

⑼ php get请求中的请求头应该如何设置

获取请求头信息,可以在curl_exec函数执行前,添加代码curl_setopt($ch,CURLINFO_HEADER_OUT,true);在curl_exec函数执行后,通过 curl_getinfo($ch,CURLINFO_HEADER_OUT) 来获取curl执行请求的请求数据。
获取响应头信息,可以在curl_exec函数执行前,添加代码 curl_setopt($ch, CURLOPT_HEADER, true);curl_setopt($ch, CURLOPT_NOBODY,true); 之后 通过curl_exec函数来获取响应头信息。获取设置 curl_setopt($ch, CURLOPT_NOBODY,false);然后对curl_exec获取的值通过\r\n\r\n进行分割截取第一部分即为响应头信息。

阅读全文

与phpcurl头信息相关的资料

热点内容
编译器原理与实现书 浏览:708
dos选择命令 浏览:16
apm固件编译到单片机 浏览:120
联通深蓝卡都包含什么app 浏览:263
如何判断网络服务器正常 浏览:649
路由器搭桥远端服务器地址是什么 浏览:515
编译动态库时会连接依赖库吗 浏览:707
淘宝手机加密是随机的吗 浏览:672
解压包子怎么装饰 浏览:585
四个数凑24算法 浏览:676
哪一种不是vi编译器的模式 浏览:169
xp在此处打开命令窗口 浏览:128
代码编译运行用什么软件 浏览:998
动态库在程序编译时会被连接到 浏览:761
python超简单编程 浏览:260
获取命令方 浏览:977
怎样制作文件夹和图片 浏览:60
调研编译写信息 浏览:861
python冯诺依曼 浏览:419
同时安装多个app有什么影响 浏览:254