NAME

HTTP::Headers::ActionPack::Authorization - The Authorization Header factory

VERSION

version 0.04

SYNOPSIS

use HTTP::Headers::ActionPack::Authorization;

# create HTTP::Headers::ActionPack::Authorization::Basic objects ...

# create from string
my $auth = HTTP::Headers::ActionPack::Authorization->new_from_string(
    'Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=='
);

# create from parameters
my $auth = HTTP::Headers::ActionPack::Authorization->new(
    'Basic' => {
        username => 'Aladdin',
        password => 'open sesame'
    }
);

my $auth = HTTP::Headers::ActionPack::Authorization->new(
    'Basic' => [ 'Aladdin', 'open sesame' ]
);

my $auth = HTTP::Headers::ActionPack::Authorization->new(
    'Basic' => 'QWxhZGRpbjpvcGVuIHNlc2FtZQ=='
);

# or HTTP::Headers::ActionPack::Authorization::Digest objects ...

# create from string
my $auth = HTTP::Headers::ActionPack::Authorization->new_from_string(
    q{Digest
      username="jon.dough@mobile.biz",
      realm="RoamingUsers@mobile.biz",
      nonce="CjPk9mRqNuT25eRkajM09uTl9nM09uTl9nMz5OX25PZz==",
      uri="sip:home.mobile.biz",
      qop=auth-int,
      nc=00000001,
      cnonce="0a4f113b",
      response="6629fae49393a05397450978507c4ef1",
      opaque="5ccc069c403ebaf9f0171e9517f40e41"}
);

# create from parameters
my $auth = HTTP::Headers::ActionPack::Authorization->new(
    'Digest' => (
        username => 'jon.dough@mobile.biz',
        realm    => 'RoamingUsers@mobile.biz',
        nonce    => "CjPk9mRqNuT25eRkajM09uTl9nM09uTl9nMz5OX25PZz==",
        uri      => "sip:home.mobile.biz",
        qop      => 'auth-int',
        nc       => '00000001',
        cnonce   => "0a4f113b",
        response => "6629fae49393a05397450978507c4ef1",
        opaque   => "5ccc069c403ebaf9f0171e9517f40e41"
    )
);

DESCRIPTION

This is a factory class that can be used to create the appropriate subclass based on the type of Authorization header.

METHODS

new ( %params )
new_from_string ( $header_string )

AUTHOR

Stevan Little <stevan.little@iinteractive.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Infinity Interactive, Inc..

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.