Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Limit URL length with Dancer/Starman

by dasgar (Deacon)
on Nov 08, 2013 at 00:39 UTC ( #1061647=note: print w/ replies, xml ) Need Help??


in reply to SOLVED: Limit URL length with Dancer/Starman

Although I have used Dancer, I definitely don't consider myself to be an "expert" on Dancer.

Looking through the Dancer documentation, here's one (untested) idea that might work.

use Dancer; my $max_url_length = 100; # change this to what you want # first route handler any ['get', 'post'] => '.*' => sub { if ((length request->request_uri) > $max_url_length) { # do the 414 error page } else {pass(...);} }; # create other routes dance;

The basic idea that I was trying to do in the above code was to have the first route handler that will catch everything and check the URL length. If it's above the max limit, give the 414 error page. Otherwise, pass the request on to the next matching route handler. Again, I haven't tested that code, so I can't guarantee that I'm reading documentation correctly.


Comment on Re: Limit URL length with Dancer/Starman
Download Code
Re^2: Limit URL length with Dancer/Starman
by gsiems (Chaplain) on Nov 14, 2013 at 20:40 UTC
    Thanks for the suggestion. It appears that, because of how things are written, I can't rely on the first route handler being the first one processed... at least it doesn't appear to work that way (see the updated question).

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1061647]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (15)
As of 2014-07-14 12:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (259 votes), past polls