|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Futur Membre du Club
![]() Inscription : juin 2004 Messages : 53 ![]() |
Hello
Je développe une API REST sur mon site Je voudrais que quand une erreur survient, ma méthode ne renvoie rien, seulement un code HTTP d'erreur personnalisé (par ex HTTP 601..) Je n'ai aucune idée de comment faire cela dans mon action Voila l'action en question : Code :
Comment faire pour cela ?? Merci d'avance! |
||
|
|
00
|
|
|
#2 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Il n'y a pas un setStatusCode() ou un setCodeStatus() dans les méthodes de l'objet sfWebResponse ?
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : juin 2004 Messages : 53 ![]() |
et bien l'objet "response" est de type sfResponse et pas sfWebResponse non ?
sur l'objet sfResponse je n'ai pas de "setStatusCode". |
|
|
00
|
|
|
#4 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
La méthode fait partie de sfWebReponse.
Mais je ne sais pas très bien où se situe la limite entre les deux. Je pense n'avoir jamais utilisé que le sfWebRéponse... REST est un protocole qui utilise le HTTP pour le transport, donc il me semblerait logique de baser la réponse sur le sfWebReponse, non ?
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#5 | ||
|
Futur Membre du Club
![]() Inscription : juin 2004 Messages : 53 ![]() |
Oui effectivement :
La fonction a utiliser est : $this->getResponse()->setStatusCode(XXX,'custom message'); il faut bien faire attention au sfWebResponse, c'est le premier point : - Dans le "factories.yml" Code :
|
||
|
|
00
|
|
|
#6 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Ton service n'est pas sensé appeler l'application en mode debug. Et en mode normal, la debug barre devrait être désactivée...
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : juin 2004 Messages : 53 ![]() |
Effectivement, sauf que sur mon appli, je suis en contexte "dev" et donc avec la barre par défaut ! donc en testant l'API sur le contexte "dev" avec la barre donc, cela ne fonctionnait pas
|
|
|
00
|
|
|
#8 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
En contexte "dev" dans l'appli ?
Bon, chacun fait comme il veut, mais je ne pense pas que cela soit courrant.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() Inscription : juin 2004 Messages : 53 ![]() |
looool en général vaut mieux commencer par le contexte "dev" avant de passer en contexte "test" et ensuite en "prod" non ?
|
|
|
00
|
|
|
#10 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Je pense que l'on parle de choses différentes.
Je parle de lancer l'application avec le contrôleur de dev : frontend_dev.php. De ce que j'ai compris, tu préfères basculer le mode dev sur toute l'application. L'avantage avec le mode dev dans le contrôleur c'est que si tu fais un appel REST sur l'url 'standart' de l'application, elle n'est pas en dev, ce qui est plus simple (a mon avis) pour tester un REST. Tu peux toujours lancer la demande depuis un explorateur en mode dev à l'aide du contrôleur, l'explorateur peut afficher le contenu généré.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
Copyright © 2000-2012 - www.developpez.com