Pouvons-nous créer des codes d'État HTTP?
J'ai un peu de REPOS et de service WCF et que vous voulez envoyer un code d'état personnalisé en fonction de l'opération.
Exemple lors de la validation échoue, alors je veux envoyer HTTP 444 et lorsque l'autorisation échoue je veux envoyer HTTP 455
La question est comment nous l'avons validé pour les deux SOAP et REST web services.
Sur le client comment fonctionne le code d'erreur de loi, parce que lorsque vous envoyez un HTTP 400/500 d'un Service WCF (à l'aide de SAVON) une exception est jeter sur le client, comprenant le code d'état.
Maintenant, si je l'envoi d'un nouveau code d'état personnalisé comment le client gérer cela?
- Est-ce un service, vous êtes exposant au monde entier, ou avez-vous le contrôle de tous les clients?
Vous devez vous connecter pour publier un commentaire.
Oui, tant que vous respectez la classe-qui est, 2xx pour le succès, 4xx pour l'erreur du Client, etc. Ainsi, vous pouvez retourner sur 4XX des codes d'erreur (de préférence ceux qui sont non attribuées) pour votre propre application des conditions d'erreur.
Pour citer [RFC 2616][1]:
De la classe de
http://tools.ietf.org/html/rfc2616#section-6.1.1
Je recommande contre la création de vos propres codes d'état HTTP, quand les codes existent déjà pour les choses que vous voulez faire dans votre exemple.
De https://tools.ietf.org/html/rfc4918#section-11.2:
Il peut être soutenu que "l'incapacité à traiter" pourrait être dû à une erreur de validation.
Oui, vous pouvez ajouter des codes d'erreur. Si possible, utilisez les codes qui existent déjà, et si vous êtes de déclarer de nouveaux être prudent pour éviter les collisions.
Vous devez être conscient que certains proxys filtre inconnu codes. J'ai eu des problèmes avec les utilisateurs qui, où, derrière un proxy qui mappé 5XX à 500, et 4XX à 404. De ce fait mes appels ajax que, lorsque la vérification de l'état de code à l'échec.
Certaines applications ajouter leurs propres codes de réponse dans la gamme 600-799. Vérifier, par exemple, le code de réponse de la liste de KeyNote ici
Keynote Défini Des Codes D'Erreur (600-799)
Si c'est une bonne pratique, je n'oserai pas dire, mais il est intéressant de référence au moins.
Non, vous pouvez uniquement utiliser rfc exigences en matière de documentation de code, voir les détails dans RFC1945