Wir sind gerade dabei, eine Diskussion darüber zu führen, wie man mit REST-Ausnahmen umgehen soll.
Antwort Inhaltstyp: JSON
Zwei Lösungen, die wir haben:
Argumente:
Gegenargument:
Was sagen Sie?
Für eine JSON API, die ich kürzlich entwickelt habe, mache ich beides. Ich antworte immer mit gültigem JSON (naja, vorausgesetzt, ich antworte überhaupt). Wenn ich eine ungültige Anfrage feststelle, benutze ich den Status 400. Wenn ich einen Serverfehler feststelle (den ich nicht glaube, dass er durch eine ungültige Anfrage verursacht wurde), verwende ich einen 5xx-Status. Das JSON-Objekt enthält einen speziellen Schlüssel, der nur für Fehler mit einem Zeichenfolgenwert festgelegt ist.
Ich denke, das ist eine gute Lösung, die die REST-Prinzipien respektiert und auf mehrere Arten verwendet werden kann. Die gleiche Lösung wird von einigen anderen JSON-APIs wie Yahoo Search verwendet. Versuchen Sie Ссылка .
Verwenden Sie Fehlercodes wie für HTTP. Also 50 * für irgendeine Ausnahme wegen eines internen Problems. Und 40 * für schlechte Argumente. Vermeiden Sie so weit wie möglich Ihre eigenen definierten Codes. Die Idee ist eine "einheitliche" Schnittstelle.
Im Allgemeinen. 204 für den Erfolg, ohne irgendwelche Inhalte zu senden 200 für den Erfolg mit einer JSON-Darstellung der Ressource Und wenn es keine erfolgreiche Operation ist, geben Sie den entsprechenden Antwortcode zurück. Sie können optional auswählen, dass ein JSON zurückgegeben werden soll. Um die Dinge zu vereinfachen, können Sie ein gemeinsames Format (json) für alle Fehlerreaktionen haben.
Ссылка muss gelesen werden, bevor Sie Ihre API-Spezifikationen einfrieren.
Tags und Links cxf json rest web-services