【发布时间】:2016-06-28 01:01:39
【问题描述】:
我在使用 HttpWebRequest 类通过 http 1.1 访问网站时遇到问题。当我启动应用程序时,该请求仅在前两次有效,然后超时。
显然这就是 2 个并发连接的限制。
首先,我如何通过代码或更改清单来删除它? 二、如何强制使用http 1.0? 第三,这是我的代码:
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.CookieContainer = Memory._Jar;
req.Method = "GET";
req.Host = url.Split(new string[] { "//" }, StringSplitOptions.None)[1].Split('/')[0];
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
req.UserAgent = Memory._UserAgent;
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.Headers.Add("Accept-Language", "en-US,en;q=0.8");
req.AllowAutoRedirect = false;
req.Proxy = Memory._Proxy;
req.Timeout = Memory._Timeout;
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
我不使用并发线程,我什至没有设置“保持活动”并且网站不是 https,所以我想象请求和响应对象在超出范围时会被垃圾收集,仅此而已它(他们没有实现 IDisposible),但显然情况并非如此......
那么正在建立什么联系?它是如何持续存在的?
【问题讨论】:
标签: c#