Curl 收到过期的 cookie

Curl 收到过期的 cookie

为什么 curl 会收到过期的 cookie?

在响应某个 URL 时,服务器会发送一个302 Found响应和一个 cookie。在 Firefox 中,此 cookie 可以无缝设置。Firebug 说:

    Set-Cookie  somekookie=91b115e3d4a5889ed93e70a7ddb24957a1eb0e27cbcd96a3342a8064; expires=Sun, 24-Oct-2010 23:28:55 GMT; path=/; domain=.somedomain.ru

然而当curl请求同样的url时,cookie已经过期,curl的输出:

    * Added cookie somecookie="deleted" for domain somedomain.com, path /, expire 1224891945
    < Set-Cookie: somecookie=deleted; expires=Fri, 24-Oct-2008 23:45:45 GMT; path=/; domain=.somedomain.com

为什么日期看起来这么旧以及如何解决这个问题?

答案1

你有没有尝试过:

curl -L -b null somedomain.com

-b 启用 cookie,-L 跟随位置 (302)。'null' 是任何空的/不存在的文件。

或者存储 cookie:

curl -b cookies -c cookies somedomain.com

-c 写入 netscape 样式的 cookies 文件。

如果没有更多信息,这就是我能做的最好的了。HTH。

答案2

好吧,当 curl 执行请求时,没有设置 Cookie(除非您指定一个),所以服务器可能只是说:这是一个新会话,我将删除您可能拥有的此域上的任何站点的任何 cookie,以防万一。

在 Firefox 上,是否有 cookie发送有要求吗?

相关内容