jQuery: attraper jsonp 400 Bad Request?

Comment intercepter l’en-tête 400 et traiter le rappel d’erreur sur une requête jsonp?

Ou c’est un bug?

Voici un exemple:

http://jsfiddle.net/pLuPb/

Aucune erreur, ni complète n’est déclenchée? Comment attraper une erreur?

Je suis maudit? La semaine dernière, j’ai ce genre de problèmes …: D

Je suppose que je vais devoir signaler celui-ci à JQuery Tracker.

Merci 😉

jsopn n’est pas une requête ajax régulière, il crée en fait une balise de script dans votre DOM. C’est pourquoi les données de réponse jsonp sont au format abc_FunctionName (data) , et vous obtenez des données directement dans cette fonction. Mais jQuery le fait automatiquement pour vous, de sorte que vous ne rencontrez jamais cette partie.

Pour gérer les erreurs jsonp, utilisez ce pluggin http://code.google.com/p/jquery-jsonp/

JSONP n’est pas comme les requêtes AJAX ordinaires, il utilise une balise de script pour obtenir le contenu. Cela étant dit, jQuery devrait être capable d’attraper une erreur comme 400 et c’est étrange que ce ne soit pas le cas.

Vous voudrez peut-être append un délai d’expiration dans votre object de configuration ajax: http://jsfiddle.net/pLuPb/18/

Vous pouvez également faire quelque chose comme votre propre gestionnaire JSONP: http://jsfiddle.net/6j6uk/ (vous n’êtes pas sûr du support X-Browser)