Najlepszy samouczek Sesje Ruby CGI W 2024 r. W tym samouczku możesz dowiedzieć się Klasa CGI :: Session,
CGI :: Sesja może być zapisany jako użytkownika i środowiska CGI stanu trwałe sesji, po sesje muszą być zamknięte, dzięki czemu można mieć pewność, że dane są zapisywane do pamięci, które po zakończeniu sesji, trzeba usunąć dane.
#!/usr/bin/ruby require 'cgi' require 'cgi/session' cgi = CGI.new("html4") sess = CGI::Session.new( cgi, "session_key" => "a_test", "prefix" => "rubysess.") lastaccess = sess["lastaccess"].to_s sess["lastaccess"] = Time.now if cgi['bgcolor'][0] =~ /[a-z]/ sess["bgcolor"] = cgi['bgcolor'] end cgi.out{ cgi { cgi.body ("bgcolor" => sess["bgcolor"]){ "The background of this page" + "changes based on the 'bgcolor'" + "each user has in session." + "Last access time: #{lastaccess}" } } }
Access "/cgi-bin/test.cgi?bgcolor=red" przeskoczy do konkretnego koloru tła strony.
Dane sesji istnieje w katalogu tymczasowego pliku na serwerze, parametr określa prefiks prefiks sesji, jako przedrostek dla plików tymczasowych. Na serwerze, dzięki czemu można łatwo zidentyfikować różnych sesji pliki tymczasowe.
CGI :: sesji, aby utrzymać trwały stan użytkownika i środowiska CGI. Sesji w pamięci może być również na dysku twardym.
Ruby class CGI :: Session zapewnia prosty sposób tworzenia sesji:
CGI::Session::new( cgi[, option])
CGI włączyć nową sesję i zwraca odpowiedni obiekt CGI :: Session. Opcje mogą być opcjonalne hash, które mogą być następujące wartości:
Nie. | metoda Opis |
---|---|
1 | [] Zwraca wartość klucza. Zobacz przykłady. |
2 | [] = Ustawia daną wartość klucza. Zobacz przykłady. |
3 | usunąć Metoda usuwania nazywa podstawowej zarządzania bazami danych. Dla FILESTORE, usunąć plik fizyczny zawierający sesję. Dla MemoryStore, usunąć dane sesji z pamięci. |
4 | aktualizacja Wywołać metodę aktualizacji systemu bazowego zarządzania bazami danych. Dla FILESTORE, sesja jest zapisywana na dysku. Dla MemoryStore bez skutku. |