2016-08-19 4 views
0

Ich habe einen API-Controller mit der Route /resource/{id}, in dem ID erforderlich ist, um numerisch zu sein. Wenn die Anfrage-URL /resource/abc ist, dann bekomme ich 404 HTTP-Antwort. Ist es in Ordnung, oder ich sollte eine ID innerhalb des Controllers übergeben, dann validiere es und antworte mit 400 Code?API-Antwort bei ungültiger Ressourcen-ID

+0

Hier ist ein nützlicher [guide] (http://racksburg.com/choosing-an-http-status-code) zur Auswahl eines geeigneten HTTP-Statuscodes –

Antwort

0

Wenn Sie die Spezifikation überprüfen, können Sie sehen, dass 400 der beste Weg zu gehen wäre. HTTP Status Codes

404 schlägt vor, dass derzeit keine Ressource mit dieser ID vorhanden ist. Aber da die ID numerisch sein muss, ist dies nicht der Fall. Das wird sich niemals ändern.

400 Sagt, dass die Syntax falsch ist und noch wichtiger ist, dass der Client die Anfrage nicht wiederholen sollte, ohne Änderungen vorzunehmen.

Denken Sie auch daran, dass Sie eine Erläuterung der Fehlersituation benötigen. Die ideale Situation wäre also ein 400-Status-Code, der dem Kunden sagt, dass er Änderungen an der Anfrage vornehmen muss, und die Erklärung, welche Änderungen vorgenommen werden müssen.

Verwandte Themen