Perl 使用LWP::UserAgent时不保存cookie
我试图将cookies与Perl 使用LWP::UserAgent时不保存cookie,perl,cookies,lwp-useragent,Perl,Cookies,Lwp Useragent,我试图将cookies与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', autosa
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
草莓Perl让我赢了。试着发布一个:
$cookie_jar->save
此外,cookie可能已过期或被请求丢弃,因此,也可以将ignore\u discard
设置为1来构造您的$cookie\u jar
:
my $cookie_jar = HTTP::Cookies->new(
file => 'lwp_cookies.txt',
autosave => 1,
ignore_discard => 1,
);