2010-12-06 28 views
1

Quelle réponse du serveur provoque ajaxError sur le gestionnaire Ajax du navigateur? Ce code d'erreur est-il différent de 200 ou d'un champ json spécial non vide?Qu'est-ce qu'une erreur ajax?

Répondre

1

Oui, les codes de réponse non 200 peuvent provoquer une erreur, you can see what constitutes "success" here:

httpSuccess: function(xhr) { 
    try { 
     // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450 
     return !xhr.status && location.protocol === "file:" || 
      xhr.status >= 200 && xhr.status < 300 || 
      xhr.status === 304 || xhr.status === 1223; 
    } catch(e) {} 

    return false; 
} 

Ceci est aussi de jQuery 1.4.4, précédent un code d'état de 0 a également réussi, parce que l'Opéra 304 était rapporté comme 0 ... que la clémence a été supprimée depuis afin d'éliminer les faux positifs pour le succès. Si la vérification ci-dessus est false, the error handler is called.