我想了解cURL for cookies的四个选项:
CURLOPT_COOKIESESSION
CURLOPT_COOKIEFILE
CURLOPT_COOKIEJAR
CURLOPT_COOKIE
我知道COOKIEJAR
用于编写Cookie,COOKIEFILE
用于阅读。
那么COOKIESESSION
是什么?
CURLOPT_COOKIE
是自定义的,但是我可以使用它来维护与服务器的会话吗?
答案 0 :(得分:20)
要了解CURLOPT_COOKIESESSION
,您需要了解有关Cookie的一些事项。 Cookie具有由发布Cookie的网站设置的到期日期。如果cookie的过期日期已过,则浏览器/客户端将不会发送它,并且客户端将删除它。如果cookie设置为没有过期日期,浏览器应该使用该cookie,直到浏览器会话关闭,或者用户注销并且cookie被取消设置。
也就是说,CURLOPT_COOKIESESSION
是一种让cURL模拟关闭浏览器的方法。如果COOKIEFILE
中有一些会话cookie(没有过期的cookie),它通常会在文件中存在时发送这些cookie。如果您设置CURLOPT_COOKIESESSION
,则它不会发送任何没有过期日期的Cookie。
CURLOPT_COOKIE
只是为您提供了一种设置将以原始格式发送到服务器的cookie数据的方法。例如,如果您有要发送的原始HTTP cookie,这将非常有用。如果没有此选项,您必须将这些cookie放入COOKIEFILE
,或者使用您拥有的原始值设置自定义HTTP标头Cookie:
。