2

我的目标是能够通过 cURL 访问站点。我希望 cURL 与常规浏览器访问页面的操作相匹配。

在使用 cURL(使用 cookiejar)和使用常规浏览器时,我一直在尝试比较会话。这是我用来确保 cURL 使用 cookie 和会话的代码

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiejar_filename);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiejar_filename);

但是,在检查 Cookiejar 文件的内容并使用常规浏览器并通过 Firebug 检查标头后,在我看来 Cookiejar 是不同的,或者至少是不完整的

饼干罐

www.a-site.com  FALSE   /   FALSE   0   JSESSIONID  55E82598EF3284F374F58CA6DC8C11FE.JP_DC2PR_11
www.a.site.com  FALSE   /   FALSE   0   Desktop Yes

浏览器

ns_cookietest=true; __utma=113861848.1832854207.1369452081.1370916912.1370920751.11; __utmz=113861848.1369452081.1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not%20provided); _ga=1.3.1832854207.1369452081; tc_cj_v2=%5Ecl_%5Dny%5B%5D%5D_mmZZZZZZKMQJRMMNMOMMMZZZ%5D777_rn_lh%5BfyfcheZZZ222H%22**%22%27%20H%7D*%28H+%23ZZZKMQJRMNQKMNPPZZZ%5D777%5Ecl_%5Dny%5B%5D%5D_mmZZZZZZKMQJSLJQNSLRKZZZ%5D; dotcarClient="AKLC01|AKLC01|oc_br|18/06/2013 09:00|25/06/2013 09:00|NZ"; _wt.user-325805=WT3KC0StLfCnd6A4ur2nAUdXBJ9Ez7OOCDiLTqV0IYdywEaF1kd6x1mPEuy8yFjYdeay2CrS9sn1yAo205C-EW_mQAxZzyF5Zmn7It9h_v4C6w~; JSESSIONID=55E82598EF3284F374F58CA6DC8C11FE.JP_DC2PR_08; Desktop=Yes; __utmc=113861848; ns_cookietest=true; ns_session=true; _wt.mode-325805=WT3_vlvsvnZ9Lk~; __utmb=113861848.2.10.1370920751

如果您检查并比较这两个信息,您将看到“JSESSIONID”和“Desktop”数据存在,但 Cookiejar 文件缺少其他数据。

有没有办法使 cURL 会话/cookie 的行为与常规 Web 浏览器相同?

4

0 回答 0