SOAP-Lite

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

  + updated XMLRPC::Lite to not detect value as float for 'NaN' and
    'INF' strings
  + updated XMLRPC::Lite to return 200OK on errors
  + updated XMLRPC do not specify charset in content-type
  + updated Makefile.PL to allow configuration from command line
    (thanks to Dana Powers)
  + updated publishing API tests for UDDI server to call a new server
    (GLUE)
  + changed close() to shutdown() in Daemon transport (thanks to Sean
    Meisner)
  + added support for HTTP_proxy and HTTP_proxy_* in WSDL access
    (thanks to Stephen Shortland)
  + added XMLRPC support in COM interface. XMLRPC client and server
    can be created using COM interface
  + added DO_NOT_PROCESS_XML_IN_MIME option for MIME parts with
    text/xml content type
  + modified deserialization algorithm that allows to properly
    deserialize SOAP1.2 messages when default is set to SOAP1.1 and
    vice versa
  + added fault in XMLRPC::Lite for incorrect datatypes specified by
    user (thanks to Paul Prescod)

lib/SOAP/Lite.pm  view on Meta::CPAN

        else {
            eval $self->generate_stub($_) or Carp::croak "Bad stub: $@";
        }
    }
    $self;
}

sub access {
    my $self = shift->new;
    my $url = shift || $self->schema_url || Carp::croak 'Nothing to access. URL is not specified';
    $self->useragent->env_proxy if $ENV{'HTTP_proxy'};

    my $req = HTTP::Request->new(GET => $url);
    $req->proxy_authorization_basic($ENV{'HTTP_proxy_user'}, $ENV{'HTTP_proxy_pass'})
        if ($ENV{'HTTP_proxy_user'} && $ENV{'HTTP_proxy_pass'});

    my $resp = $self->useragent->request($req);
    $resp->is_success ? $resp->content : die "Service description '$url' can't be loaded: ",  $resp->status_line, "\n";
}

sub generate_stub {
    my $self = shift->new;
    my $package = shift;
    my $services = $self->services->{$package};
    my $schema_url = $self->schema_url;

lib/SOAP/Transport.pod  view on Meta::CPAN


Because C<SOAP::Client> inherits from C<LWP::UserAgent>, you can use any of C<LWP::UserAgent>'s proxy settings. For example:

   SOAP::Lite->proxy("http://endpoint.server/",
                     proxy => ["http" => "http://my.proxy.server"]);

or

   $soap->transport->proxy("http" => "http://my.proxy.server");

The above code samples should specify a proxy server for you. And should you use C<HTTP_proxy_user>
and C<HTTP_proxy_pass> for proxy authorization, C<SOAP::Lite> will handle it properly.

=head3 HTTP BASIC AUTHENTICATION

HTTP Basic authentication is accomplished by overriding the get_basic_credentials subroutine in C<LWP::UserAgent> (which C<SOAP::Transport::HTTP::Client> is a subclass):

  BEGIN {
    sub SOAP::Transport::HTTP::Client::get_basic_credentials {
      return 'username' => 'password';
    }
  }

lib/SOAP/Transport/HTTP.pm  view on Meta::CPAN

            #  if !$SOAP::Constants::DO_NOT_USE_LWP_LENGTH_HACK
            #      && length($envelope) != $bytelength;

            # compress after encoding
            # doing it before breaks the compressed content (#74577)
            $envelope = Compress::Zlib::memGzip($envelope) if $compressed;

            $http_request->content($envelope);
            $http_request->protocol('HTTP/1.1');

            $http_request->proxy_authorization_basic( $ENV{'HTTP_proxy_user'},
                $ENV{'HTTP_proxy_pass'} )
              if ( $ENV{'HTTP_proxy_user'} && $ENV{'HTTP_proxy_pass'} );

            # by Murray Nesbitt
            if ( $method eq 'M-POST' ) {
                my $prefix = sprintf '%04d', int( rand(1000) );
                $http_request->header(
                    Man => qq!"$SOAP::Constants::NS_ENV"; ns=$prefix! );
                $http_request->header( "$prefix-SOAPAction" => $action )
                  if defined $action;
            }
            else {

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 1.261 second using v1.00-cache-2.02-grep-82fe00e-cpan-1925d2aa809 )