I am trying to attach to a .NET Web Service via SSL. I can and parse to non-SSL services without incident. I've read every bit of documentation that I can find the last few days, where everyone says its possible.
My problem is that CURL connection, but it drops an empty request, so the WS fails, as its looking for an XML payload that never comes.
The code that I'm using:
//--------------------------------------------------------------------
require_once "SOAP/Client.php";
$ClientCode = "ClientCode"; $UserID = "UserID"; $UserPassword = "password";
$params = array('ClientCode'=>$ClientCode, 'UserID'=>$UserID, 'UserPassword'=>$UserPassword);
$client = new SOAP_Client( "https://secure.someservice.net/Service/Service.asmx" );
// CURL options to bypass SSL certificate checking $client->setOpt('curl', CURLOPT_VERBOSE, 1); $client->setOpt('curl', CURLOPT_SSL_VERIFYPEER, 0); $client->setOpt('curl', CURLOPT_SSL_VERIFYHOST, 0);
$response = $client->call('SystemValidate',$params, array( 'style' => 'literal', 'namespace'=> 'urn:SystemValidate', 'soapaction' => 'https://secure.someservice.net/Service/SystemValidate', 'use' => 'literal', 'trace'=>'1'));
if (strtolower(get_class($response)) == "soap_fault") { print "Error! " . $response->message; } else { print "{". print_r($response) ."}"; } print "<hr />Debug<pre>";
// show me the Request Payload print "<p>REQ:<br>"; print nl2br(htmlspecialchars($client->__getlastrequest())); print "</pre>"; print "<hr /><pre>";
// show me the response print "<p>RES:<br>"; print nl2br(htmlspecialchars($client->__getlastresponse())); print "</pre>";
//--------------------------------------------------------------------------------
In the end I get an empty request payload. I read everything about SSL certificate checking, and placed the right code to bypass that. I'm stumped, so any help will be appreciated.
Regards, Richard Rosa
-- PHP Soap Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php