javascript - Perl Cookie 不工作

标签 javascript perl cookies

我已经花了一整天的时间寻找这个问题的答案:

我将 Perl 与 LWP::UserAgent 和 HTTP::Cookies 一起使用。

我的问题是我无法通过基于 cookie 的年龄检查。

在 Perl 中我使用这段代码:

my $browser = LWP::UserAgent->new;
my $resp = $browser->get( $url, 'User-Agent' => 'MySpider/1.0' );

#Cookie Setup
my $cookies = HTTP::Cookies->new();
$cookies->set_cookie(1,'age_check', '1','/','.example.com/', 80, ,0,3354512128, 0);
$browser->cookie_jar($cookies);

网站正在使用 JavaScript 设置 Cookie

function saveSplash(domain) {
    var expDate = new Date();
    expDate.setTime(expDate.getTime()+(1*24*3600*1000));
    setCookie("age_check", 1, expDate, '/', domain);
    setCookie("screen_width", getScreenWidth(), expDate, '/', domain);
}

这是我的浏览器保存的 Cookie:

age_check
1
example.com/
1088
3354512128
30140182
2646218624
30139981

知道我做错了什么吗?

提前谢谢大家!

最佳答案

我发现您的 set_cookie 调用有两个问题。首先,域应该是 ".example.com" 没有斜杠;斜杠在路径参数中指定。其次,您缺少 path_spec 参数的值,因此您为 discard (0) 指定的值被用于 maxage,这会导致 cookie 过期。

关于javascript - Perl Cookie 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5365843/

相关文章:

perl - Elasticsearch : use filter and should bool query

c# - 登录网站并使用 cookie 获取另一个页面的源代码

javascript - 当我的 HTTP 调用因 Internet 访问而失败时,有没有一种方法可以发出错误警报?

用于浏览器对象和 HTML DOM 对象的 JavaScript 模拟库

perl - 使用 Perl 删除 XML 节点 - 这个或那个

javascript - 跨域 cookie - 一个可能的新想法

javascript - jQuery cookie 值为 %5Bobject%20Object%5D

java - 在 Java 中显示 HTML 并与之交互

javascript - 获取随机 jQuery 对象的属性

r - 在每个字符处拆分字符串