NAME
Kernel::System::WebUserAgent – legacy HTTP user agent (DEPRECATED)
DESCRIPTION
All web user agent functions.
Please note that this package is deprecated and will be removed in a future version of OTRS.
PUBLIC INTERFACE
new()
create an object
use Kernel::System::WebUserAgent;
my $WebUserAgentObject = Kernel::System::WebUserAgent->new(
Timeout => 15, # optional, timeout
Proxy => 'proxy.example.com', # optional, proxy
);
Request()
return the content of requested URL.
Simple GET request:
my %Response = $WebUserAgentObject->Request(
URL => 'http://example.com/somedata.xml',
SkipSSLVerification => 1, # (optional)
NoLog => 1, # (optional)
);
Or a POST request; attributes can be a hashref like this:
my %Response = $WebUserAgentObject->Request(
URL => 'http://example.com/someurl',
Type => 'POST',
Data => { Attribute1 => 'Value', Attribute2 => 'Value2' },
SkipSSLVerification => 1, # (optional)
NoLog => 1, # (optional)
);
alternatively, you can use an arrayref like this:
my %Response = $WebUserAgentObject->Request(
URL => 'http://example.com/someurl',
Type => 'POST',
Data => [ Attribute => 'Value', Attribute => 'OtherValue' ],
SkipSSLVerification => 1, # (optional)
NoLog => 1, # (optional)
);
returns
%Response = (
Status => '200 OK', # http status
Content => $ContentRef, # content of requested URL
);
You can even pass some headers
my %Response = $WebUserAgentObject->Request(
URL => 'http://example.com/someurl',
Type => 'POST',
Data => [ Attribute => 'Value', Attribute => 'OtherValue' ],
Header => {
Authorization => 'Basic xxxx',
Content_Type => 'text/json',
},
SkipSSLVerification => 1, # (optional)
NoLog => 1, # (optional)
);
If you need to set credentials
my %Response = $WebUserAgentObject->Request(
URL => 'http://example.com/someurl',
Type => 'POST',
Data => [ Attribute => 'Value', Attribute => 'OtherValue' ],
Credentials => {
User => 'otrs_user',
Password => 'otrs_password',
Realm => 'OTRS Unittests',
Location => 'ftp.otrs.org:80',
},
SkipSSLVerification => 1, # (optional)
NoLog => 1, # (optional)
);