1
私たちのAPI上のすべての404に対してカスタムレスポンスを提供したいと思います。たとえば:カスタム404レスポンスモデル
{
"message": "The requested resource does not exist. Please visit our documentation.."
}
私は、次の結果フィルタは、MVCパイプライン内のすべてのケースのために働くと考えている:
public class NotFoundResultFilter : ResultFilterAttribute
{
public override void OnResultExecuting(ResultExecutingContext context)
{
var result = context.Result as NotFoundResult;
if (result != null)
{
context.Result = new HttpNotFoundResult(); // My custom 404 result object
}
}
}
しかし、要求されたURLは、アクションのルートと一致しない場合、上記のフィルタではありませんヒット。 これらの404応答をどのようにして傍受できますか?ミドルウェアが必要ですか?
ありがとうございます!私は、HttpContextにResultプロパティがないため、ミドルウェアがそのように動作するとは思わない。私はJSONを返すので、UseStatusCodePages()は適切でないかもしれないと思います。 – davenewza
私は答えを更新しました – Set
作品は404sと素晴らしいです。私はJwtBearerAuthenticationミドルウェアを使用している場合、401または403で動作するようには見えませんが、別の質問でこれを上げます。 – davenewza