【发布时间】:2023-03-12 10:06:01
【问题描述】:
我在 BaseController 上添加了 [Authorize] 属性。如果没有 JWT 令牌,它会显示 401 错误,我需要自定义该 401 错误。我需要了解应用程序在哪个位置引发 401 错误。谁能帮帮我。
【问题讨论】:
标签: c# asp.net asp.net-web-api
我在 BaseController 上添加了 [Authorize] 属性。如果没有 JWT 令牌,它会显示 401 错误,我需要自定义该 401 错误。我需要了解应用程序在哪个位置引发 401 错误。谁能帮帮我。
【问题讨论】:
标签: c# asp.net asp.net-web-api
有几种方法可以自定义这种行为,但我认为最直接的一种是写一个custom middleware。
// Startup.Configure method
app.UseRouting();
app.Use(async (context, next) =>
{
await next();
if (context.Response.StatusCode == (int)HttpStatusCode.Unauthorized)
{
await context.Response.WriteAsync("Token Validation Has Failed. Request Access Denied");
}
});
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints();
【讨论】: