我正在使用这个。。。。
function cURL($url, $header=NULL, $p=NULL)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1");
curl_setopt($ch, CURLOPT_COOKIEFILE, "/tmp/TestCookies");
if ($p) {
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $p);
}
$result = curl_exec($ch);
if ($result) {
return $result;
} else {
return curl_error($ch);
}
curl_close($ch);
}
我正在打这样的电话。。。
$Headers = array(
"Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*'/*;q=0.5",
"Accept-Language: en-gb,en;q=0.5",
"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7");
$a = $this->cURL("https://www.mysite.com/",$Headers, null);
我希望它能收到一个cookie并将其写入文件/tmp/TestCookies
。
站点肯定会返回Set-Cookie
头-如果我转储$a
,我可以看到它们,但是,有问题的文件从未创建过。
如果是权限问题,我用touch
和chmod 777
创建了它——该文件现在存在,但它是空的。
我做错了什么?
旋度常数被拆分为
CURL_COOKIEFILE
作为cookies.txt源,从- 以及
CURL_COOKIEJAR
作为写入的数据存储
您必须为_COOKIEFILE
提供一个空字符串以启用它IIRC,但如果您希望存储它们,则必须为_COOKIEJAR
。通常将两个选项设置为相同的名称。