[Warszawa-pm] LoginSimple na PSGI

Zbigniew Lukasiak zzbbyy w gmail.com
Sob, 12 Lut 2011, 17:08:49 PST


No tak oczywiście zapomniałem załącznika - oj późno juz.

Z.

2011/2/13 Zbigniew Lukasiak <zzbbyy w gmail.com>:
> Hej!
>
> Co myślicie o czymś takim?
>
> Załączam pierwszy eksperyment w tym kierunku - czyli dwie Aplikacje na
> Placka (LoginApp i LogoutApp) i prosta aplikacyjke która je
> wykorzystuje.
>
> Poniżej jak to działa:
>
> package main;
> #use LoginApp;
> #use LogoutApp;
> use Plack::Builder;
>
> sub check_pass {
>    my( $username, $pass ) = @_;
>    if( $username eq $pass ){
>        return 0, $username;
>    }
>    else{
>        return 'Wrong username or password';
>    }
> }
>
> builder {
>    enable 'Session';
>    mount '/login' => LoginApp->new( check_pass => \&check_pass )->to_app;
>    mount '/logout' => LogoutApp->new()->to_app;
>
> Czyli potrzebny jest callback do sprawdzania hasła - przekazujemy to
> do LoginApp i montujemy ją pod adresem /login.  Pod /logout
> odpowiednio LogoutApp.
>
> Całość działa tak, że po zalogowaniu przenosi nas na stronę z której
> weszliśmy do /login i to działa zarówno w przypadku gdy przechodzimy
> przez linka (jak w załączonym kodzie) jak i jeśli ze strony
> wymagającej loginu zrobimy redirecta do /login i zapiszemy adres na
> który trzeba wrócić w sesji (pod redir_to) - na przykład tak:
> $env->{'psgix.session'}{redir_to} = $env->{PATH_INFO};
>
> Pozdrawiam,
> Zbyszek
>



-- 
Zbigniew Lukasiak
http://brudnopis.blogspot.com/
http://perlalchemy.blogspot.com/
-------------- następna część ---------
A non-text attachment was scrubbed...
Name: app.psgi
Type: application/octet-stream
Size: 4214 bytes
Desc: nie znany
URL: <http://mail.pm.org/pipermail/warszawa-pm/attachments/20110213/19afcf45/attachment.obj>


Więcej informacji o liście Warszawa-pm