curl保存cookies的问题

WBOY
發布: 2016-06-23 13:19:31
原創
1238 人瀏覽過

有的网站会用不同的域名设置COOKIE,这样好像CURL就会漏掉一些COOKIE。例如CURL访问网站www.xxx.com首页时,它会立即设置一个属于xxx.com的COOKIE,在首页填写用户名确定后转到www.xxx.com/next.php,这时会设置一个属于www.xxx.com的COOKIE。请问这两个COOKIE要怎么成功获取呢?


回复讨论(解决方案)

CURLOPT_COOKIE
设定HTTP请求中“Set-Cookie:”部分的内容。
CURLOPT_COOKIEFILE
包含cookie信息的文件名称,这个cookie文件可以是Netscape格式或者HTTP风格的header信息。
CURLOPT_COOKIEJAR
连接关闭以后,存放cookie信息的文件名称

CURLOPT_COOKIE
设定HTTP请求中“Set-Cookie:”部分的内容。
CURLOPT_COOKIEFILE
包含cookie信息的文件名称,这个cookie文件可以是Netscape格式或者HTTP风格的header信息。
CURLOPT_COOKIEJAR
连接关闭以后,存放cookie信息的文件名称



谢谢你的回复

访问首页时,首页会生成属于xxx.com的COOKIE,CURL取不到这个COOKIE:

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'http://www.xxx.com');
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $contents = curl_exec($ch);
    curl_close($ch);

填写用户名确定后,转到第二页时,会生成属于www.xxx.com的COOKIE,CURL可以成功取得这个COOKIE:

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'http://www.xxx.com/next.php');
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieFile);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $contents = curl_exec($ch);
    curl_close($ch);

为什么CURL访问http://www.xxx.com的时候,www.xxx.com会生成一个属于xxx.com的COOKIE呢?这会不会就是CURL取不到COOKIE的原因?

具体情况要具体分析,你最好给出真实的 url

具体情况要具体分析,你最好给出真实的 url


已经解决了,原来是JS设置的,谢谢你。还有一个问题想问你一下:curl_exec()之后就立即curl_close()和curl_exec()之后暂停5分钟再curl_close(),那对于被curl的网站来说,会有什么不同呢?

没有什么不同

没有什么不同


非常感谢!

楼主您好!我好像遇到了和你一样的问题,使用CURL库时request里的cookies好像缺少了一部分,请问你是怎么解决的?

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!