ASPNETCoreAPI为什么在200响应中返回500内部服务器错误?
创始人
2024-09-20 08:01:02
0

这个问题通常是由于ASPNET Core API的配置问题导致的。如果API配置了中间件来处理异常,API将在200响应中返回错误消息而不是500错误。要解决这个问题,可以在Startup.cs文件中注册ExceptionHandler中间件来处理异常。下面是一个示例:

在ConfigureServices方法中添加以下代码:

services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

services.AddExceptionHandler(); //新增注册ExceptionHandler中间件

在Startup.cs文件中添加以下代码:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    app.UseExceptionHandler(); //注册ExceptionHandler中间件

    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseHsts();
    }

    app.UseHttpsRedirection();
    app.UseMvc();
}

然后在应用程序根目录添加ExceptionHandlerExtensions.cs,包含以下代码:

public static class ExceptionHandlerExtensions
{
    public static void UseExceptionHandler(this IApplicationBuilder app)
    {
        app.UseExceptionHandler(builder =>
        {
            builder.Run(async context =>
            {
                context.Response.StatusCode = (int) HttpStatusCode.InternalServerError;
                context.Response.ContentType = "application/json";

                var ex = context.Features.Get();
                if (ex != null)
                {
                    var err = JsonConvert.SerializeObject(new { error = ex.Error.Message });
                    await context.Response.WriteAsync(err);
                }
            });
        });
    }
}

通过注册ExceptionHandler中间件,API将在500错误响应中返回错误消息。

相关内容

热门资讯

一分钟教会你!hhpoker有... 一分钟教会你!hhpoker有没有辅助,hhpoker德州透视挂,透明挂教程(有挂软件);玩家必备必...
发现玩家!德普软件,佛手大菠萝... 发现玩家!德普软件,佛手大菠萝辅助,wpk教程(有挂软件)是一款可以让一直输的玩家,快速成为一个“必...
新手必备!菠萝辅助器免费版的功... 新手必备!菠萝辅助器免费版的功能介绍,wepoker有辅助器吗,扑克教程(有挂教程);玩家必备必赢加...
一分钟了解!德普之星透视辅助插... 一分钟了解!德普之星透视辅助插件,epoker免费透视脚本,解密教程(有挂攻略);玩家必备必赢加哟《...
热点讨论!德州局hhpoker... 热点讨论!德州局hhpoker,约局吧如何查看是否有挂,教你教程(有挂神器);支持多人共享记分板与复...
一分钟了解!德普之星的辅助工具... 一分钟了解!德普之星的辅助工具介绍,线上德州的辅助器是什么,2025新版总结(有挂神器);支持多人共...
一秒答解!wepoker的辅助... 1、一秒答解!wepoker的辅助器,wepoker轻量版有透视吗,玩家教你(有挂透视)。2、wep...
热点推荐!wejoker辅助软... 热点推荐!wejoker辅助软件视频,hhpoker是真的还是假的,黑科技教程(有挂教程);原来确实...
新手必备!德普之星透视辅助插件... 1、新手必备!德普之星透视辅助插件,wepokerplus开挂,攻略教程(有挂辅助)(UU poke...
总算了解!wpk免费辅助,aa... 总算了解!wpk免费辅助,aapoker辅助器是真的吗,大神讲解(有挂技巧)科技教程也叫必备教程,这...