Ich schreibe eine Webanwendung, die Modul CGI::Session ver 4.35 verwenden muss. Nach dem Empfang Anforderung vom Client mit einem SESSIONID StringPerl, CGI :: Sitzung funktioniert nicht richtig
$sid = $cgi->cookie("CGISESSID") || $cgi->param("CGISESSID") || undef;
es versucht, die Sitzung neu zu erstellen, indem Sie den $ sid als Argument übergibt
$session = new CGI::Session($sid) or ($logger->error(CGI::Session->errstr) and die);
Wenn es eine Sitzung mit diesem sid erstellt wurde, $session->id
und $sid
sind angenommen, um das gleiche zu sein, aber die Wahrheit ist, es ist NICHT.
Dies ist die Aussage, wo ich eine völlig neue Sitzung erstellen
$session = new CGI::Session("id:md5", undef, {Directory=>$SESSION_DIR})
or ($logger->error(CGI::Session->errstr) and die);
Was ist hier falsch gelaufen? Wie soll ich das Modul CGI :: Session richtig benutzen?
Es war nicht so schlau wie ich die Session-ID zweimal erstellen.Bei der zweiten Anfrage, obwohl die Seite korrekte Sitzungs-ID erhielt, wurde die Anweisung 'my $ session = new CGI :: Session (" id: md5 ", $ sid, {Verzeichnis => $ SESSION_DIR})' 'weiterhin erstellt unterschiedliche Sitzungs-ID Was könnte passiert sein? – wakandan