Im sử dụng curl qua php để tìm nạp url. Tôi thành công có thể tải xuống trang, tiêu đề và tất cả. Tuy nhiên, các cookie được trả về bởi bất kỳ trang nào không được lưu vào tệp được chỉ định. Tôi đã kiểm tra quyền vv, và không có gì có vẻ ngoài bình thường. Tôi bắt đầu nghĩ rằng một cái gì đó là tắt trong mã của tôi.Làm cách nào để lưu cookie từ phản hồi cho yêu cầu cURL bằng php?
$get_cookie_page = 'http://www.google.ca';
echo curl_download($get_cookie_page);
function curl_download($Url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $Url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
$http_headers = array(
'Host: www.google.ca',
'User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101 Firefox/6.0.2',
'Accept: */*',
'Accept-Language: en-us,en;q=0.5',
'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'Connection: keep-alive'
);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $http_headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
Mọi trợ giúp đều được đánh giá cao.
Mã của bạn có vẻ tốt - bạn có chắc chắn 1000% có một số cookie để lưu không? – DaveRandom
Curl sẽ không ghi cookie phiên ra tệp, chỉ những tệp vĩnh viễn. –
@DaveRandom: Có các cookie được lưu. –