For a couple of weeks I’ve been implementing Webservices to feed resources on a SugarCRM project that I’m working on. As you may know SugarCRM provides NuSOAP, which is a SOAP Toolkit for PHP that brings some extra functionalities to SOAP implementation provided by PHP.
Today I had to use NTLM authentication method, unfortunately it isn’t supported by NuSOAP yet, but I’ve found that if you combine cURL with NuSOAP you can get through without a problem.
So here is the solution I came up with:
First of all I’ve upgraded NuSOAP to it’s latest version which is 0.7.3 (the one provided by SugarCRM didn’t supported cURL yet), then I wrote something similar to the code below.
<?php
$wsdl = 'http://project/file.php?wsdl';
$client = new nusoap_client($wsdl, true);
$client->setCredentials('', '', 'ntlm');
$client->setUseCurl(true);
$client->useHTTPPersistentConnection();
$client->setCurlOption(CURLOPT_USERPWD, 'auth_username:auth_password');
?>
Pingback: Create SOAP Client in PHP | Tim Yao