<?php
$xml = '<?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>'.
'<GetShirtInfo xmlns="http://api.soap.website.com/WSDL_SERVICE/">'.
'<ItemId>15</ItemId>'.
'</GetShirtInfo>'.
'</soap:Body>'.
'</soap:Envelope>';
$url = "https://api.soap.website.com/soap.asmx?wsdl";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$headers = array();
array_push($headers, "Content-Type: text/xml; charset=utf-8");
array_push($headers, "Accept: text/xml");
array_push($headers, "Cache-Control: no-cache");
array_push($headers, "Pragma: no-cache");
array_push($headers, "SOAPAction: http://api.soap.website.com/WSDL_SERVICE/GetShirtInfo");
if($xml != null) {
curl_setopt($ch, CURLOPT_POSTFIELDS, "$xml");
array_push($headers, "Content-Length: " . strlen($xml));
}
curl_setopt($ch, CURLOPT_USERPWD, "user_name:password"); /* If required */
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ShirtInfoResponse
xmlns="http://api.soap.website.com/WSDL_SERVICE/">
<ShirtInfo>
<ItemId>15</ItemId>
<ItemName>Some Item Name</ItemName>
<ItemPrice>658.7</ItemPrice>
<ItemCurrency>AUD</ItemCurrency>
</ShirtInfo>
</ShirtInfoResponse>
</soap:Body>
</soap:Envelope>
Helped me a lot! Thanks
ReplyDeleteNice Article. It will definitely solve everyone problem.
ReplyDeleteThis was great to read
ReplyDelete