怎么提高 HttpWebRequest 速度

在坚持几年 2013-12-14 05:12:54
程序里使用 HttpWebRequest HttpWebResponse和远程服务器做交互,感觉返回数据有些慢,
string responseStr = "";
string strURL = url;
System.Net.HttpWebRequest request;
request = (System.Net.HttpWebRequest)WebRequest.Create(strURL);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
string paraUrlCoded = System.Web.HttpUtility.UrlEncode("message");
paraUrlCoded += "=" + System.Web.HttpUtility.UrlEncode(data.ToString());
byte[] payload;
payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
request.ContentLength = payload.Length;
Stream swriter = request.GetRequestStream();
swriter.Write(payload, 0, payload.Length);
swriter.Close();
#endregion
System.Net.HttpWebResponse response;
response = (System.Net.HttpWebResponse)request.GetResponse();
System.IO.Stream s;
s = response.GetResponseStream();
StreamReader reader = new StreamReader(s);
responseStr = reader.ReadToEnd();

有没有什么方法能使返回速度快一点呢。远程服务器是公共服务器不太可能做改动的
...全文
376 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhantianyou 2013-12-16
  • 打赏
  • 举报
回复
在这里顺便借你的贴问下,如何设置这个超时。 我在远程机子断网下,10秒就要返回信息。但是这个HttpWebRequest 怎么设置timeout都没用。 我测了下,每次都要20多秒
在坚持几年 2013-12-15
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
如果你有多个请求,那么可以通过多线程提高速度。单个的话,没有办法。
这个东西是写在sql2005里的clr。已经算是多线程的了吧
threenewbee 2013-12-14
  • 打赏
  • 举报
回复
如果你有多个请求,那么可以通过多线程提高速度。单个的话,没有办法。
  • 打赏
  • 举报
回复
据说,如果你把编程中的英文改成西班牙文,就快了。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧