gpt4 book ai didi

perl - 使用 LWP::UserAgent 时不保存 Cookie

转载 作者:行者123 更新时间:2023-12-01 16:48:55 25 4
gpt4 key购买 nike

我正在尝试将 cookie 与 LWP::UserAgent 一起使用,但它们没有保存在文本文件中。我做错了什么?

use v5.16;
use strict;
use warnings;
use Data::Dumper;

use LWP::UserAgent;
use HTTP::Cookies;
use Net::SSL ();

my $cookie_jar = HTTP::Cookies->new(
file => 'lwp_cookies.txt',
autosave => 1,
);

my $ua = LWP::UserAgent->new(
ssl_opts => { verify_hostname => 0 },
cookie_jar => $cookie_jar,
);

my $auth_url = 'https://my.site.url/path/authenticate';
use HTTP::Request::Common qw(GET);
my $req = HTTP::Request->new(GET => $auth_url);
$req->authorization_basic('username', 'password');

$ua->request($req);
say Dumper( \$cookie_jar );

转储的数据如下所示:

$VAR1 = \bless( {
'autosave' => 1,
'COOKIES' => {
'my.site.url' => {
'/' => {
'BLAH_COOKIE_KEY' => [
0,
'very_long_string',
undef,
1,
undef,
undef,
1
]
}
}
},
'file' => 'lwp_cookies.txt'
}, 'HTTP::Cookies' );

lwp_cookies.txt 就是这个:

#LWP-Cookies-1.0

我正在使用 Strawberry Perl 取胜。

最佳答案

尝试发布:

$cookie_jar->save

此外,cookies 可能已过期或被请求丢弃,因此,同样构造您的 $cookie_jar 并将 ignore_discard 设置为 1:

my $cookie_jar = HTTP::Cookies->new( 
file => 'lwp_cookies.txt',
autosave => 1,
ignore_discard => 1,
);

关于perl - 使用 LWP::UserAgent 时不保存 Cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15340194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com