Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
onjour a tous,
Je viens sur ce forum car cela fait plusieurs jours que je me bat sur la façon de traiter mes erreurs AJAX de façon propre.
J'utilise le framework Zend pour développer le site web et la librairie javascript jquery. J'envoie ma requête Ajax à mon controlleur qui fait ses traitements. Durant cette période je catche les exceptions à l'aide d'un try/catch.
Je souhaiterais pouvoir renvoyer mon propre message d'erreur via JSON. Cependant pour que Query puisse interpréter mes messages d'erreurs il faut que le code http renvoyé par le serveur soit différent de 200. Lorsque je set mon exception dans mon objet réponse, cette valeur est automatiquement renvoyée.
Cependant il renvoie aussi toute la page d'erreur Apache par défaut pour le code 500. Du coup mon message JSON est incompréhensif par le code js.
Quelqu'un aurait une piste pour gérer au mieux ce genre de situation ?
Merci d'avance
Louis
Hors ligne
tu as un autre problème
car si tu catch ton exception
il n'y a aucun envoie de code d'erreur apache qui soit généré
le traitement continu normalement
les codes d'erreurs surviennent justement lorsque les erreur ne son pas traitées.
donc normalement un echo de json encode suffit
A+JYT
Hors ligne
Salut,
Je pense que tu as un problème que beaucoup de dév. rencontrent ces derniers temps avec Zend Server 5 et apache.
Dès qu'on set un code de réponse autre que 200, apache retourne en plus son propre message d'erreur html sur la sortie (même pour le code 201).
Je n'ai toujours pas trouvé la raison aujourd'hui, avec les versions 4 de ZendServer je n'avais pas ce problème.
J'ai beau fouiller, traquer les ErrorDocument, les extensions, comparer les deux configs, je ne trouve rien, et je ne suis pas le seul. Malheureusement tu n'auras pas de réponse à cette question (s'il s'agit bien du même pb), sur tous les forums, personne ne sait répondre (zf, zend, nabble, etc. sans succès).
http://www.z-f.fr/forum/viewtopic.php?id=4837
http://zend-framework-community.634137. … 74698.html
http://forums.zend.com/viewtopic.php?f= … ent#p22232
(d'autres topics sans réponse tournent autour du sujet)
La seule solution temporaire que j'ai trouvé et de redéfinir les ErrorDocument dans la conf apache avec des erreurs vides (un espace).
ErrorDocument 400 " " ErrorDocument 500 " " ErrorDocument 201 " "
etc.
Tout ça s'il s'agit bien du même problème hein
Je précise qu'en prod sous ubuntu je n'ai pas ce problème. Uniquement sur les machine de dév. avec Windows 7.
A+ benjamin.
Hors ligne
Pages: 1