会话Cookie使用cURL过期时

时间:2015-01-31 18:13:50

标签: php curl cookies session-cookies

通常,在使用浏览器时,会话cookie在浏览器窗口关闭时到期。

但是当使用(php)cURL(并设置COOKIE_FILECOOKIE_JAR选项)时,它们会活多久?

1 个答案:

答案 0 :(得分:-1)

根据mozilla.org

  客户端关闭时会删除

会话cookie [...],因为它没有指定Expires或Max-Age指令。但是,Web浏览器可能会使用会话还原,这会使大多数会话Cookie成为永久性的,就像浏览器从未关闭一样。

根据documentation of curl_setopt功能:

  

默认情况下, libcurl始终存储并加载所有cookie,如果它们是会话cookie,则独立。会话cookie是没有到期日期的cookie,它们应该存在且存在于此“会话中” “ 只要。

如果使用

将Cookie保存在指定的文件中
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://stackoverflow.com');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
$output = curl_exec($ch);
curl_close($ch);

然后,从客户端的角度来看,只要使用正确的cookie设置CURLOPT_COOKIEJAR,会话就会处于活动状态。这是您的脚本的选择。