意味のあるHTTP応答を返すことをお勧めしますが、これを処理するための正しいアプローチを考え出しています。ASP.NET Core 2.0 Web APIで意味のあるHTTP応答を返す
私のASP.NET Core Web APIアプリケーションでは、エンドポイント、つまりAPIアクションメソッドはリクエストを受信し、レスポンスのためにビジネスレイヤを呼び出して応答を返します。
ビジネスレイヤでは、要求が承認されているかどうかを確認します。許可されていない場合は、例外の種類、つまり許可されていないリクエストを表す例外がスローされますが、APIエンドポイントではHTTP 500
が返されます。私はむしろHTTP 401
を返すだろう。
質問は下位レベルの例外をステータスコードHTTP
に転送する方法です。
つの質問:
- それはアプリで低いレベルで発生した例外の種類をキャプチャし、
HTTP
応答にそれを翻訳しようとしようとしている価値があるか、私は単に私のAPIがHTTP 500
を返させてください? - もしそれが価値があるのであれば、どうすればいいですか?
5xxと4xxとの対話とエラーメッセージの応答が間違っています。 –
@Sam - 私はAlexeiに同意します。しかし、もしあなたがそれをやるべきではなく、どうやってそれをするのかを質問する言葉を言い直すならば、これは合理的な質問でしょう。 – NightOwl888