4092RE: [soaplite] Possible to ovrride LWP::UserAgent?
- Oct 22, 2004I'll try and work this change into our code in the next week and let you know how it goes...Thanks!-----Original Message-----The current architecture of SOAP::Lite doesn't make this terribly easy. That is because LWP::UserAgent is the base class for SOAP::Transport::HTTP::Client.
From: Byrne Reese [mailto:byrne@...]
Sent: Friday, October 22, 2004 4:25 PM
To: Mike Schroeder
Subject: Re: [soaplite] Possible to ovrride LWP::UserAgent?
But in SOAP::Lite 0.65 Beta 2, I have included a work around. It is not elegant, but it works. In the next release, you can use the following code to change the UserAgent for SOAP::Transport::HTTP::Client.
#!/usr/bin/perl -wThere is one caveat: the class you specify as the USERAGENT_CLASS MUST INHERIT FROM LWP::UserAgent. If it does not, because SOAP::Lite depends upon LWP::UserAgent method calls, SOAP::Lite will issue a die command.
use SOAP::Lite +trace => qw(debug);
my $uri = "urn:Majordojo:TemperatureService";
my $proxyUrl = "http://localhost/cgi-bin/soaplite.cgi";
$SOAP::Transport::HTTP::Client::USERAGENT_CLASS = "My::UserAgent2";
my $soap = SOAP::Lite
$soap->c2f(SOAP::Data->name('temperature' => 100));
This needs to be tested. So who is signing up for it?
PS. I have just checked these changed into CVS.
Mike Schroeder wrote:
Adding an environment variable for HTTP_proxy on my client wxPerl app
worked great to get around proxy firewalls - you gotta love when Perl
makes hard things easy.
Is it possible to override the LWP::UserAgent used by
SOAP::Transport::HTTP to use something like LWP::UserAgent::ProxyAny --
it has the feature of checking a Win32 client's Internet Explorer
settings for proxy settings in addition to checking the environment
variable - useless for my GTK or OS X clients, but would be very handy
for the majority of Win32 clients. I couldn't find anything in the docs
or the mailing list about this - unless I just missed it.
Thanks in advance for any ideas.
- << Previous post in topic