HttpWebRequest用来测试某网页的速度是500多毫秒,而IE速度很快只有不到100毫秒,如何才能提高HttpWebRequest的响应速度?

解决方案 »

  1.   

    你的是.NET 4吧?你需要加
    request.Proxy = null;
    这个属性
      

  2.   

    设置了,还是500多毫秒HttpWebRequest req = HttpWebRequest.Create(url) as HttpWebRequest;//创建一个httpRequest请求对象,包含要传递的值name 
                if (req == null)
                    return "";
                req.Method = "GET";
                req.KeepAlive = true;
                req.Proxy = null;
                HttpWebResponse resp = req.GetResponse() as HttpWebResponse;
                //Stream stream = resp.GetResponseStream();
                ////System.Drawing.Image imgSource = System.Drawing.Image.FromStream(stream);
                //StreamReader streamReader = new StreamReader(stream, System.Text.Encoding.UTF8);
                //string strOut = streamReader.ReadToEnd();
                //if (strOut != null && strOut.Contains("Value cannot be null"))
                //{            //}
                //Console.WriteLine(resp.StatusDescription.ToString());
                //Console.WriteLine((int)resp.StatusCode);
                //Console.WriteLine(strOut);
                //stream.Close();
                resp.Close();
      

  3.   

    webclient也是对httpwebrequest的封装吧
      

  4.   

    要对比完全下载完毕的html代码,而不是看 浏览器显示了东西就说明浏览器下载完了
      

  5.   

    这个网页就是一个json串,多线程也起不到作用啊
      

  6.   

    看看服务器是否支持压缩,如果服务器支持压缩可能是因为IE接收的是压缩数据,你的程序时接收未压缩数据,所以比IE慢。
      

  7.   

    Httpwebrequest 的速度应该比IE快才对, 它不用渲染
      

  8.   

    HttpWebRequest是经过层层封装后得到的东西
    IE应该是直接调用系统底层的方法,所以会比较快
      

  9.   

    看不懂你是如何测试的!基本上所有互联网访问都要经过ie核心,而ie浏览器也要经过ie核心去访问互联网。关键是它们显示的所谓“速度”谁知道是取得那一段?你能保证它们都是用同一个指标吗?例如一个家庭主妇去买羊肉,跟一个饭店厨师子去买羊肉,都要经过“掏钱付款”的过程。可是主妇是把自己进入菜市场直到离开菜市场的时间都叫做花钱时间,而厨师是把钱从手里递给对方的那几秒钟时间叫做花钱时间,根本不是一回事。