2010-11-24 12 views
0

J'essaie de filtrer la réponse à la requête en fonction du code d'état renvoyé. J'ai trouvé comment je peux obtenir le code d'état en utilisant l'instruction "complete", mais je ne sais pas comment obtenir le gestionnaire pour les données. Dans l'exemple, je souhaite inclure l'instruction d'erreur et l'instruction de réussite dans le gestionnaire complet, et pouvoir y traiter les données.en utilisant les données jquery pour traiter les demandes RESTfull

$.ajax({ 
     dataType: 'json', 
     url: url, 
     cache: false, 
     type: 'GET', 
     async: true, 
     error: function(){ 
      //process error 

     }, 
     success: function(data){ 
     //process data 
     }, 
     complete: function(transport) { 

     switch(transport.status){ 
      case 200: 
       //process data 
       break; 
      case 202: 
       //process data 

       break; 
      case 304: 
       //do not process data 

       break; 
      default: 
       //default processing 
       break; 
     } 
     } 

     } 
    }); 

Répondre

0

Vous réponse réelle est transport

, vous pouvez utiliser transport.responseText pour obtenir la réponse de la chaîne (avant qu'il ne soit analysé, ce qui se passe dans success)

+0

Merci Horia. Le problème est que je reçois une assez grande réponse de JSON. et ce que je reçois du responseText est une chaîne. quel serait le meilleur moyen de le traiter? Je deviens parfois une chaîne de réponse très larege. Dans le gestionnaire de succès, j'obtiens directement l'objet json dans la variable de données. – Octavian