【问题标题】:How to turn off persistent proxy connections如何关闭持久代理连接
【发布时间】:2011-02-09 10:08:17
【问题描述】:

这是this question 的后续内容,内容是如何在HttpWebRequest 上打开Connection: Keep-Alive 标头。

我已成功从我的 Web 服务调用中禁用 Connection: Keep-Alive 标头,但是当我使用代理时,它还会在调用发送到服务器之前向代理发送 CONNECT xxx.xxxxx.xx:443 HTTP/1.1

使用这个CONNECT 调用会发送一堆标头:

System.Net Information: 0 : [5420] ConnectStream#33166512 - Sending headers
{
Proxy-Authorization: Basic xxxxxxxxxxxxxxx==
Host: xxx.xxxxx.xx
Proxy-Connection: Keep-Alive
}.

我想摆脱 Keep-Alive 并将其更改为 Close 但不知道如何控制此标头。如何更改或禁用 Proxy-Connection 标头?

编辑:
谷歌搜索,我发现我必须设置 webRequest.Connection = "Close";webRequest.Connection = null;,但这些会导致参数异常。

【问题讨论】:

    标签: c# web-services session proxy asmx


    【解决方案1】:

    显然无法更改 Proxy-Connection 标头。

    我试图实现的结果(在客户端和代理之间的负载均衡器在 2 分钟不活动后将其终止之前关闭与代理的 tcp 连接)是通过设置实现的

    ServicePointManager.MaxServicePointIdleTime = 100000;

    ServicePointManager 会在 100 秒后关闭底层连接,远在它被负载均衡器杀死并在必要时创建一个新连接之前。

    【讨论】:

      猜你喜欢
      • 2019-11-03
      • 2023-03-08
      • 2012-06-06
      • 1970-01-01
      • 1970-01-01
      • 2019-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多