What I did here was use a standard funtion that creates two connected filehandles. Then sent the data to the part called Write, then closed it to flush it and signal EOF. Then in a new HTTP::Cookies object we load the data by telling it to open its filehandle to the same file descriptor as the other end of our connected handles.my $cookies = new HTTP::Cookies; $cookies->set_cookie(0,'foo','foog','/','.blah.com','80',0,0,1000,1,{} +); $cookies->set_cookie(0,'moo','1025','/','.blah.com','80',0,0,1000,1,{} +); my $text = $cookies->as_string; # do anything to $text, and come back later pipe Read, Write; print Write "#LWP-Cookies-1.0\n" . $text; close Write; my $cook = new HTTP::Cookies; $cook->load( '<& ' . fileno(*Read) ); # $cook is now the same as $cookies above and we can use it as if it w +as print $cook->as_string;
On the whole this solution seems to do the job requested without requiring disk I/O, but using simple disk I/O may be a clearer method and seems to be necessary under Win98 for $cookie->as_string data over 512 characters long.
In reply to Re: LWP Cookies
by repson
in thread LWP Cookies
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |