use strict;
use warnings;
use Dancer2;
get '/' => sub {
return 'Hello, world';
};
dance;
####
$ curl localhost:3000/does_not_exist
####
Error 404 - Not Found
Error 404 - Not Found
/does_not_exist
####
use strict;
use warnings;
use Dancer2;
get '/hello/:name' => sub {
my $name = route_parameters->get('name');
return "Hello, $name";
};
hook before => sub {
my $name = route_parameters->get('name');
is_disallowed($name) and send_error("$name is disallowed", 401);
};
sub is_disallowed {
my $name = shift;
return $name eq 'nick' ? 1 : 0;
}
dance;
####
$ curl localhost:3000/hello/lembark
####
Hello, lembark
####
$ curl localhost:3000/hello/nick
####
Error 401 - Unauthorized