[解決済み】入力に誤りがあった場合のHTTPステータスコードについて
質問
200 (everything OK)ではなく、入力にエラーがある場合の最適なHTTPレスポンスコードは何ですか?
例えば、あるデータをサーバーに送信したところ、データが間違っているとの応答が返ってきたとします。
を使って
500
は、サーバーイシューのように見える
を使って
200
警告やエラーのレスポンステキストを含むのは良くない (キャッシュを許可して何でもOKというわけではない)
を使って
204
で、何も返さないというのもいいかもしれません(でも、よくサポートされている?)
を使って
404
は、要求されたパス (スクリプト) が適切な場所にある場合は、間違っています。
どうすればいいですか?
私たちもAPIを作るときに同じような悩みを抱えていました。私たちは、HTTPステータスコードに相当する
InvalidArgumentException
. 下記のソース記事を読んで、結局は
422 Unprocessable Entity
という記述があります。
422 (Unprocessable Entity) ステータスコードは、サーバーがリクエストエンティティのコンテンツタイプを理解し (従って 415 (Unsupported Media Type) ステータスコードは不適切)、リクエストエンティティの構文が正しい (従って 400 (Bad Request) ステータスコードは不適切)が、含まれる命令を処理できないことを意味します。たとえば、このエラー状態は、XMLリクエストボディが整形式(すなわち、構文的に正しい)だが、意味的には誤ったXML命令を含む場合に発生する可能性がある。
のソースです。 https://www.bennadel.com/blog/2434-http-status-codes-for-invalid-data-400-vs-422.htm
関連
-
[解決済み] updateとdeleteのHTTPステータスコード?
-
[解決済み] リソースが既に存在する場合の POST に対する HTTP レスポンスコード
-
[解決済み] 検証失敗または重複が無効な場合のREST HTTPステータスコード
-
[解決済み] ローカルファイルの読み込み時に "Cross origin requests are only supported for HTTP." というエラーが発生する。
-
[解決済み] HTTP DELETE リクエストにエンティティボディは許されますか?
-
[解決済み] PythonでHTTP GETを行う最短の方法は何ですか?
-
[解決済み] REST APIサービスが検証に失敗した場合に返すべき適切なHTTPステータスコードは何ですか?
-
[解決済み】HTTPのPOSTとPUTの違いは何ですか?
-
[解決済み] [Solved] リクエストに必須パラメータがない場合、どのようなHTTPステータスレスポンスコードを使用すればよいですか?
-
[解決済み】入力に誤りがあった場合のHTTPステータスコードについて
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Wekaにおけるクロスバリデーション
-
[解決済み] JAX-WSによるサーバーサイドのスキーマ検証
-
[解決済み] reactとmaterial-uiによるフォームバリデーション
-
[解決済み] IETFが定義するメールアドレスの実際の最小の長さはどのくらいですか?
-
[解決済み] 有効なメールアドレスの最大長を教えてください。
-
[解決済み] HTML5 form 要素の検証を無効にする
-
[解決済み] Angularフォームフィールドを手動で無効に設定するにはどうすればよいですか?
-
[解決済み】Hibernate Validator(JSR303)でクロスフィールド検証を行う。)
-
[解決済み】Javaのメールアドレス検証方法は何が一番良いですか?[クローズド]
-
[解決済み】入力に誤りがあった場合のHTTPステータスコードについて