Cela a dû vous arriver : mettre en place un WebService en PHP (client), et vous n’arrivez à gérer les erreurs lorsque le serveur distant ne répond pas.
La première solution consiste à modifier le niveau d’alerte, et à brider les « hurlements » des méthodes Soap en PHP.
La seconde solution consiste à gérer les connexion en amont afin de ne pas lancer le protocole Soap.
je m’explique : avant de lancer le code permettant la construction d’une connexion Soap avec votre serveur distant, vous aller tester si une connexion socket peut être ouverte sur votre serveur distant. Si cela est impossible, alors vous gérer l’erreur de manière fatale sans accéder à vos fonction Soap. Ainsi, pas d’erreur non géré.
Voici le code à mettre en place :
// on va tester le socket
$return = @stream_socket_client('tcp://monServeurDistant:80', $errno, $errstr, 5);
// si le socket du WS n'est pas connectable
if( $return === false ){
// On vé gérer l'erreur
}
else{
// on exécute le code Soap
}
Avec ceci, vous pourrez gérer les problèmes de connexion avant que la méthode Soap ne génère d’erreur !!
0 commentaire
Pas de commentaire.
Flux RSS des commentaires de cet article. TrackBack URL
Laisser un commentaire