Authentication::Store::HTTP #2
0.04 で変なことしないで実装した。ロードする順番もいつでもOK。
trunk にあるコードは get_user にすべてのパラメータを渡してくれるようになっているのでそもそも昨日からの悩みは無用だったらしい。と、 nothingmuch が教えてくれた。
Authentication::Store::HTTP
作った。
昨日の夜書いた問題により、$c->login
のオーバーライドという暴挙に出ているため、Credential 系プラグインよりも先にロードする必要がありますw
Cred プラグインを選べるので、::Basic::Remote よりは良くなってはいる。
MOTHER1+2
はじめた。
名前ペルル。好きな食べ物クパン。
でもこんな感じで
sub get_user {
my ( $self, $id, $password ) = @_;
$self->{ua} ||= LWP::UserAgent->new;
my $request = HTTP::Request->new( HEAD => $self->{auth_url} );
$request->headers->authorization_basic( $id, $password );
my $response = $self->{ua}->request( $request );
return unless $response->is_success;
my $user = {
id => $id,
password => $password,
store => ref $self || $self,
};
return bless $user, 'Catalyst::Plugin::Authentication::User::Hash';
}
みたいに Authentication::CDBI::Basic::Remote ぽいのを再実装しようとして詰まった。
こうやってかけるようにならねーかなぁ。