Perl Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Perl Examples

Quick Start
Unicode
Byte Array
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
Signatures
SMTP
Socket / SSL
Spider
SFTP
SSH Key
SSH
SSH Tunnel
Tar
HTTP Upload
XML
XMP
Zip

More Examples...
String
Amazon S3
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

 

SOAP Example

How to send a SOAP request and get the XML response.

 Chilkat Perl Module Downloads for Windows, Linux, and MAC OS X

use chilkat();

$req = new chilkat::CkHttpRequest();
$http = new chilkat::CkHttp();

#  Any string unlocks the component for the 1st 30-days.
$success = $http->UnlockComponent("Anything for 30-day trial");
if ($success != 1) {
    print $http->lastErrorText() . "\n";
    exit;
}

#  Build this XML SOAP request:
#  <?xml version="1.0" encoding="utf-8"?>
#  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
#  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
#  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
#    <soap:Body>
#      <GetQuote xmlns="http://www.webserviceX.NET/">
#        <symbol>string</symbol>
#     </GetQuote>
#    </soap:Body>
#  </soap:Envelope>
$soapReq = new chilkat::CkXml();
$soapReq->put_Encoding("utf-8");
$soapReq->put_Tag("soap:Envelope");
$soapReq->AddAttribute("xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance");
$soapReq->AddAttribute("xmlns:xsd","http://www.w3.org/2001/XMLSchema");
$soapReq->AddAttribute("xmlns:soap","http://schemas.xmlsoap.org/soap/envelope/");

$soapReq->NewChild2("soap:Body","");
$soapReq->FirstChild2();
$soapReq->NewChild2("GetQuote","");
$soapReq->FirstChild2();
$soapReq->AddAttribute("xmlns","http://www.webserviceX.NET/");
$soapReq->NewChild2("symbol","MSFT");
$soapReq->GetRoot2();

print $soapReq->getXml() . "\r\n";

#  Build an SOAP request.
$req->UseXmlHttp($soapReq->getXml());
$req->put_Path("/stockquote.asmx");

$req->AddHeader("SOAPAction","http://www.webserviceX.NET/GetQuote");

#  Send the HTTP POST and get the response.  Note: This is a blocking call.
#  The method does not return until the full HTTP response is received.

$domain = "www.webservicex.net";
$port = 80;
$ssl = 0;

# resp is a CkHttpResponse
$resp = $http->SynchronousRequest($domain,$port,$ssl,$req);
if ($resp eq null ) {
    print $http->lastErrorText() . "\r\n";
}
else {
    #  The XML response is in the BodyStr property of the response object:
    $soapResp = new chilkat::CkXml();
    $soapResp->LoadXml($resp->bodyStr());

    #  The response will look like this:
    #  <?xml version="1.0" encoding="utf-8"?>
    #  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    #  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    #  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    #    <soap:Body>
    #      <GetQuoteResponse xmlns="http://www.webserviceX.NET/">
    #        <GetQuoteResult>string</GetQuoteResult>
    #      </GetQuoteResponse>
    #    </soap:Body>
    #  </soap:Envelope>
    #  Navigate to soap:Body
    $soapResp->FirstChild2();
    #  Navigate to GetQuoteResponse
    $soapResp->FirstChild2();
    #  Navigate to GetQuoteResult
    $soapResp->FirstChild2();

    #  The actual XML response is the data within GetQuoteResult:
    $xmlResp = new chilkat::CkXml();
    $xmlResp->LoadXml($soapResp->content());

    #  Display the XML response:
    print $xmlResp->getXml() . "\r\n";

}

 

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.