我想更好地了解 .Net http 连接重用的工作原理。
当我使用 HttpWebRequest 从同一个应用程序域向某个服务器发送两次内容时,连接是否(可选)被重用?因此服务器会将这两个请求视为来自同一连接,即使在我的应用程序中它们是不同的逻辑请求。
如果是,是否可以关闭此行为?
使用身份验证/ssl 的连接如何 - 它们是否也被重用?如果我为每个请求提供不同的凭据/策略,这可能是一个安全漏洞。
最佳答案
连接重用使用 HTTP Keep-alive,这是 HTTP/1.1 的一个特性。通过使用 HTTP Keep-alive,一个 TCP 连接用于顺序处理多个 HTTP 请求,因此可以节省为每个请求打开一个新 TCP 连接的时间。然后,每个 HTTP 请求本身又是独立的,因此不会自动重复使用身份验证和类似请求。
关于.net - http连接重用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1697424/