« waitfor コマンド | メイン | perl で cookie を取得 »

2004年08月01日

ユーザ認証を要するページにperlでアクセス

BASIC認証またはDIGEST認証を要求する web ページに perl でアクセスしたいときには LWP::UserAgent モジュールの credentials メソッドが使える。
実験用に用意した http://www.augustus.to/test/authtest/ にアクセスしてみよう。領域名は Auth_Test、ユーザ名は authtestuser、パスワードは password である。スクリプトは以下のようになる。
use LWP;
use HTTP::Request::Common;

$domain="www.augustus.to";
$port=80;
$realm="Auth_Test";   #領域名
$user="authtestuser"; #ユーザ名
$passwd="password";   #パスワード
$url="http://www.augustus.to/test/authtest/";

$browser = LWP::UserAgent->new;
$browser->credentials(
    "$domain:$port",$realm,$user,$passwd);
$response = $browser->get($url);
print $response->{_content};

投稿者 augustus : 2004年08月01日 21:07

トラックバック

このエントリーのトラックバックURL:
http://www.augustus.to/cgi-bin/blog/mt-tb.cgi/64

コメント

 credentials ってすごいですね。 $user と$passwd をきちんとMIMEでエンコードして送ってくれるんですね。

投稿者 やまもと : 2004年08月02日 16:47

ひょっとして実際に流れるパケットを調べてみたんですか?私はそこまで深く調べていませんでした。(^^;)

投稿者 augustus : 2004年08月02日 20:21

コメントしてください




保存しますか?