AJAX - Requetes asynchrones

fredgt
Invité n'ayant pas de compte PHPfrance

10 mars 2016, 10:42

Je developpe depuis quelques mois un site Web en utilisant Javascript et Ajax.

Quand je veux interroger le Web Services pour afficher des données, j'ai toujours 3 appels Ajax qui se suivent : la connexion au Web Service pour récupérer l'identifiant, l'appel à la procédure qui me retourne mes données, et la déconnexion.

Voici un extrait de ma syntaxe :
$.ajax({
type: "POST",
url: gw_url,
data: w_soap_cnx,
dataType: "xml",
async: true,
headers: {"SOAPAction": '""'},
contentType: "text/xml; charset=utf-8",
success: function(reponse)
{
// Je récupère mon ID
// J'appelle le WS pour exécuter ma requete
$.ajax({
type: "POST",
url: gw_url,
data: w_soap_mes_donnees,
dataType: "xml",
async: true,
headers: {"SOAPAction": '""'},
contentType: "text/xml; charset=utf-8",
success: function(reponse)
{
//Je récupère mes données
//Je me déconnecte
$.ajax({
type: "POST",
url: gw_url,
data: w_soap_mes_donnees,
dataType: "xml",
async: true,
headers: {"SOAPAction": '""'},
contentType: "text/xml; charset=utf-8",
success: function(reponse)
{
//Je suis déconnecté
}
});
}
});
}
});


Est-ce que mon imbrication est la meilleure façon de faire ?
Est-ce que je n'ai pas une autre solution pour faire de l'asynchrone sans imbriquer de cette facon ? En sachant que chaque appel doit s'exécuté lorsque le précédent appel est terminé.

J'ai un autre site Web en cours de développement, dans lequel on récupère beaucoup plus de données en passant par plusieurs procédures. J'ai donc parfois 3 ou 4 appels entre ma connexion et ma déconnexion. Le code n'est plus très lisible je trouve ....

Je vous remercie d'avance pour vos suggestions.


Cdlt,