如何在.NET Core Kestrel Web API中设置请求超时?

Dan*_*Eli 5 timeout .net-core kestrel-http-server

我有一个在负载均衡器后面运行的 .NET Core 2.2 Web API 项目。负载均衡器的超时设置为 60 秒。我想将应用程序中的超时设置为 55 秒,以便我可以清理内容并向调用者返回自定义消息。

我发现如果应用程序在 IIS 下运行,则可以在 web.config 中设置超时,但我的应用程序在基于 Linux 的 docker 容器中的 Kestrel 下运行。

我尝试了以下方法,但没有成功。

var builder = WebHost.CreateDefaultBuilder(args)
                .ConfigureKestrel((context, options) =>
                {
                    options.Limits.KeepAliveTimeout = TimeSpan.FromSeconds(10);
                });
Run Code Online (Sandbox Code Playgroud)