Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Small test harness for testing basic auth

by merlyn (Sage)
on May 07, 2003 at 16:43 UTC ( [id://256291]=CUFP: print w/replies, xml ) Need Help??

Corion was looking for a way to test BasicAuth in WWW::Mechanize::Shell's functional tests. Here's a snippet that fires up a tiny daemon that either demands authorization, or returns back a page saying what authorization was used. The port number varies (it always picks a free port)... it'll have to be captured for access.
use HTTP::Daemon; my $d = HTTP::Daemon->new or die; print "Please contact me at: <URL:", $d->url, ">\n"; while (my $c = $d->accept) { while (my $r = $c->get_request) { if (my ($user, $pass) = $r->authorization_basic) { $c->send_response(HTTP::Response->new(200, "OK", undef, "user = <$user> pass = <$pass>")); } else { my $res = HTTP::Response->new(401, "Auth Required", undef, "auth required"); $res->www_authenticate("Basic realm=\"testing realm\""); $c->send_response($res); } } $c->close; undef($c); }

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: CUFP [id://256291]
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others taking refuge in the Monastery: (6)
As of 2024-04-13 09:51 GMT
Find Nodes?
    Voting Booth?

    No recent polls found