in reply to CGI::Session "cache" issue
These issues seem to be related to the cache
How did you to come to this conclusion?
Upon casual examination of your code fragment, I notice you're mixing CGI::redirect with CGI::Sessions::header, well that is never going to work, because HTTP header only get sent once.
You can't have a session without a sid.
You can only pass a sid through, cookie, url param, or form param.
Your use of CGI::Session::header suggests you want to use the cookie way, but you don't send any cookies when you use CGI::redirect
See CGI::Session::Tutorial, Ovid's CGI Course$ perl -MCGI -MCGI::Session -MDDS -le " Dump( CGI::Session->new->heade +r ); " $VAR1 = "Set-Cookie: CGISESSID=7259a9a49c42fea87376be33478731b8; path= +/\r\nDate: Mo". "n, 23 May 2011 17:40:06 GMT\r\nContent-Type: text/html; chars +et=ISO-8859-1". "\r\n\r\n"; $ perl -MCGI::Session -MDDS -le " Dump( CGI->redirect )" $VAR1 = "Status: 302 Found\r\nLocation: http://localhost\r\n\r\n";
Here is monkey patch
use CGI::Session; sub CGI::Session::redirect { my $self = shift; return $self->query->redirect(-cookie => $self->cookie, @_ ); } use DDS; Dump( CGI::Session->new->redirect ); __END__ $VAR1 = "Status: 302 Found\r\nSet-Cookie: CGISESSID=a19147247f0207a6c3 +14b5aadc7c232". "a; path=/\r\nDate: Mon, 23 May 2011 17:46:15 GMT\r\nLocation: + http://localho". "st\r\n\r\n";
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: CGI::Session "cache" issue
by Zhris (Initiate) on May 23, 2011 at 18:49 UTC | |
by Anonymous Monk on May 23, 2011 at 19:55 UTC | |
by Zhris (Initiate) on May 23, 2011 at 21:37 UTC | |
by Anonymous Monk on May 23, 2011 at 23:29 UTC | |
by Zhris (Initiate) on May 24, 2011 at 18:30 UTC |
In Section
Seekers of Perl Wisdom