Cookie是什么?
由于http是无状态的,即每次页面请求但是独立的,这样当在一个论坛里的资源需要登录之后才能下载或访问,这里就需要用到cookie。淘宝、京东中的购物车也是一个典型应用。
PHP中的CURL
PHP的CURL库中可以设置记录和读取cookie。
有三个选项可以设置cookie:
CURLOPT_COOKIE: 在http头中设置cookie的信息
CURLOPT_COOKIEJAR: 收到的http responce中set-cookie的存放路径
CURLOPT_COOKIEFILE: 发出的http request中cookie从哪里读取
示例:
curl_setopt($ch, CURLOPT_COOKIE, "username=test;password=test");
类似于GET方法传数据,只是分割符是分号";"
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
其中cookie.txe文件要存在,并且有读写权限。使用cookie访问时,需要先模拟一次登陆。
参考文献:
[1] http://php.net/manual/en/function.curl-setopt.php
[2] http://www.piaoyi.org/php/php-curl-cookies.html
[3] http://www.71j.cn/archives/101
[4] http://expect7.pixnet.net/blog/post/44130402-%5B%E7%A8%8B%E5%BC%8F%5D%5Bphp%5D-curl- %E9%80%B2%E9%9A%8E%E4%BD%BF%E7%94%A8%EF%BC%8D%E5%A6%82%E4%BD%95%E7%94%A8curl%E5%82%B3%E9%81%9E%E6%8E%A5%E6%94%B6c
[5] http://hi.baidu.com/wangguang246/item/61d954cb8854ac2eef466528