34
Ho bisogno di eseguire il debug di un codice che usa il soap client. Ho trovato metodi GetLast * a php.net, ma quando provo ad ottenere ultima richiesta per il debug restituisce NULLCome scaricare la richiesta SoapClient per il debug?
<?php
$client = new SoapClient("http://www.webservicex.net/ConverPower.asmx?WSDL");
$response = $client->ChangePowerUnit(array(
"PowerValue" => 100,
"fromPowerUnit" => "horsepower",
"toPowerUnit" => "megawatts"
));
echo "====== REQUEST HEADERS =====" . PHP_EOL;
var_dump($client->__getLastRequestHeaders());
echo "========= REQUEST ==========" . PHP_EOL;
var_dump($client->__getLastRequest());
echo "========= RESPONSE =========" . PHP_EOL;
var_dump($response);
?>
Il risultato di esecuzione di codice:
$php soap_test.php
====== REQUEST HEADERS =====
NULL
========= REQUEST ==========
NULL
========= RESPONSE =========
object(stdClass)#2 (1) {
["ChangePowerUnitResult"]=>
float(0.0746)
}
Come ottenere il contenuto del corpo e le intestazioni dell'ultima richiesta di SoapClient?
Anche se è corretto @xdazz Consiglio vivamente di aggiungere anche '' ' "eccezioni"=> 0''' ai parametri nel metodo SoapClient in modo da poter visualizzare la chiamata stai facendo anche se ricevi una risposta errata. – Dragon54