// 可以将 Method 属性设置为任何 HTTP 1.1 协议谓词:GET、HEAD、POST、PUT、DELETE、TRACE 或 OPTIONS。
request.Method = "POST";
request.ContentType = "application/json";
System.IO.Stream dataStream = request.GetRequestStream();
System.Net.HttpWebResponse response = (HttpWebResponse)request.GetResponse();
dataStream = response.GetResponseStream();
System.IO.StreamReader reader = new System.IO.StreamReader(dataStream, Encoding.UTF8);
string responseFromServer = reader.ReadToEnd();
reader.Close();
reader.Dispose();
dataStream.Close();
dataStream.Dispose();
response.Close();
7 个解决方案
#1
ReadToEnd是阻塞的,服务器一直不返回所以就不走了
#2
GetResponse这个方法也是
#3
等上一段时间就可以了,要么timeout,要么返回数据
#4
根据
msdn的解释
1、是不是服务器一直无响应?
2、是不是相应内容超级长,流一直处于度的状态?
3、我目测你的
ReadToEnd 假定流在到达末尾时会知道已到达末尾。对于交互式协议(服务器仅当被请求时才发送数据而且不关闭连接),ReadToEnd 可能被无限期阻止,应避免出现这种情况。
1、是不是服务器一直无响应?
2、是不是相应内容超级长,流一直处于度的状态?
3、我目测你的
request.Method = "POST";应该改成
request.Method = "GET";
#5
Get 我试了 也是报错 ,同时添加了 request.Timeout = 30000; request.KeepAlive = true; 问题依旧。我是用来获取数据中某一列的值,会不会和我请求太频繁有关系,跑了一万多条数据还没有事,突然就操作超时了,服务器上没有任何的连接数限制和请求限制,大神们,帮帮忙吧
#6
TimeOut设的小一点
突然就超时了,你指的是什么突然就超时了?
#7
数据跑一万多条没有任何问题,超过一万多 就会提示操作超时,可能和我取得那一列数据有关系,它是消息队列产生的。
#1
ReadToEnd是阻塞的,服务器一直不返回所以就不走了
#2
GetResponse这个方法也是
#3
等上一段时间就可以了,要么timeout,要么返回数据
#4
根据
msdn的解释
1、是不是服务器一直无响应?
2、是不是相应内容超级长,流一直处于度的状态?
3、我目测你的
ReadToEnd 假定流在到达末尾时会知道已到达末尾。对于交互式协议(服务器仅当被请求时才发送数据而且不关闭连接),ReadToEnd 可能被无限期阻止,应避免出现这种情况。
1、是不是服务器一直无响应?
2、是不是相应内容超级长,流一直处于度的状态?
3、我目测你的
request.Method = "POST";应该改成
request.Method = "GET";
#5
Get 我试了 也是报错 ,同时添加了 request.Timeout = 30000; request.KeepAlive = true; 问题依旧。我是用来获取数据中某一列的值,会不会和我请求太频繁有关系,跑了一万多条数据还没有事,突然就操作超时了,服务器上没有任何的连接数限制和请求限制,大神们,帮帮忙吧
#6
Get 我试了 也是报错 ,同时添加了 request.Timeout = 30000; request.KeepAlive = true; 问题依旧。我是用来获取数据中某一列的值,会不会和我请求太频繁有关系,跑了一万多条数据还没有事,突然就操作超时了,服务器上没有任何的连接数限制和请求限制,大神们,帮帮忙吧
TimeOut设的小一点
突然就超时了,你指的是什么突然就超时了?
#7
Get 我试了 也是报错 ,同时添加了 request.Timeout = 30000; request.KeepAlive = true; 问题依旧。我是用来获取数据中某一列的值,会不会和我请求太频繁有关系,跑了一万多条数据还没有事,突然就操作超时了,服务器上没有任何的连接数限制和请求限制,大神们,帮帮忙吧
TimeOut设的小一点
突然就超时了,你指的是什么突然就超时了?
数据跑一万多条没有任何问题,超过一万多 就会提示操作超时,可能和我取得那一列数据有关系,它是消息队列产生的。