PHP Suivi des requêtes et des réponses SOAP


Exemple

Parfois, nous voulons voir ce qui est envoyé et reçu dans la requête SOAP. Les méthodes suivantes renverront le code XML dans la requête et la réponse:

SoapClient::__getLastRequest()
SoapClient::__getLastRequestHeaders()
SoapClient::__getLastResponse()
SoapClient::__getLastResponseHeaders()

Par exemple, supposons que nous ayons une constante ENVIRONMENT et que la valeur de cette constante est définie sur DEVELOPMENT nous voulons faire écho à toutes les informations lorsque l'appel à getAddress génère une erreur. Une solution pourrait être:

try {
    $address = $soap_client->getAddress(1234);
} catch (SoapFault $e) {
    if (ENVIRONMENT === 'DEVELOPMENT') {
        var_dump(
            $soap_client->__getLastRequestHeaders()
            $soap_client->__getLastRequest(),
            $soap_client->__getLastResponseHeaders(),
            $soap_client->__getLastResponse()
        );
    }
    ...
}