Business::OnlinePayment::HTTPS.3pm

Langue: en

Version: 2008-07-10 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Business::OnlinePayment::HTTPS - Base class for HTTPS payment APIs

SYNOPSIS

   package Business::OnlinePayment::MyProcessor;
   use base qw(Business::OnlinePayment::HTTPS);
   
   sub submit {
       my $self = shift;
   
       #...
   
       # pass a list (order is preserved, if your gateway needs that)
       ( $page, $response, %reply_headers )
           = $self->https_get( field => 'value', ... );
   
       # or a hashref
       my %hash = ( field => 'value', ... );
       ( $page, $response_code, %reply_headers )
             = $self->https_get( \%hash );
   
       #...
   }
 
 

DESCRIPTION

This is a base class for HTTPS based gateways, providing useful code for implementors of HTTPS payment APIs.

It depends on Net::SSLeay _or_ ( Crypt::SSLeay and LWP::UserAgent ).

METHODS

https_get [ \%options ] HASHREF | FIELD => VALUE, ...
Accepts parameters as either a hashref or a list of fields and values. In the latter case, ordering is preserved (see Tie::IxHash to do so when passing a hashref).

Returns a list consisting of the page content as a string, the HTTP response code and message (i.e. ``200 OK'' or ``404 Not Found''), and a list of key/value pairs representing the HTTP response headers.

The options hashref supports setting headers and Content-Type:

   {
       headers => { 'X-Header1' => 'value', ... },
       Content-Type => 'text/namevalue',
   }
 
 
https_post [ \%options ] SCALAR | HASHREF | FIELD => VALUE, ...
Accepts form fields and values as either a hashref or a list. In the latter case, ordering is preserved (see Tie::IxHash to do so when passing a hashref).

Also accepts instead a simple scalar containing the raw content.

Returns a list consisting of the page content as a string, the HTTP response code and message (i.e. ``200 OK'' or ``404 Not Found''), and a list of key/value pairs representing the HTTP response headers.

The options hashref supports setting headers and Content-Type:

   {
       headers => { 'X-Header1' => 'value', ... },
       Content-Type => 'text/namevalue',
   }
 
 

SEE ALSO

Business::OnlinePayment