繁体   English   中英

如何使保持活动的标头响应?

[英]How to make keep-alive header response?

我尝试使用GET和POST制作简单的Web API应用程序。当我响应GET请求时:

 {
    "status": "OK",
    "headers":
    {
        "Date": "Fri, 18 Aug 2017 16:50:38 GMT",
        "Transfer-Encoding": "chunked",
        "Connection": "close",
        "Content-Type": "application/json; charset=utf-8",
        "Server": "Kestrel"
    },
    "body": "....",
    "code": 200,
    "protocol": "HTTP/1.1"
}

但是我想使"Connection": "keep-alive" ,而不是"Connection": "close"所以我更改了配置。

Startup.cs:

 public void Configure(IApplicationBuilder app,
                       IHostingEnvironment env,
                       ILoggerFactory loggerFactory)
{
    loggerFactory.AddConsole(Configuration.GetSection("Logging"));
    loggerFactory.AddDebug();
    app.UseMvc();
    app.UseSession();
    app.Run(async (context) =>
    {
        context.Response.Headers[HeaderNames.Connection] = "Keep-Alive";
    });                    
}

但是,我得到一个"Connection": "close"响应。

知道如何更改为"keep-alive"设置吗?

HTTP / 1.1为发送方定义了“关闭”连接选项,以指示响应完成后将关闭连接。 例如,在请求或响应头字段中的Connection:close表示在当前请求/响应完成后,不应将连接视为“持久”。

如果您尝试建立持久连接,则可能需要研究websocket。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM