问题描述
stringstrData="";Streamstream=null;StreamReaderreader=null;WebClientwebClient=null;try{webClient=newWebClient();stream=webClient.OpenRead(newUri(strUri,UriKind.Absolute));reader=newStreamReader(stream);strData=reader.ReadToEnd();}catch(System.Exceptione){Define.log.Info(e.StackTrace,e);}返回strData其中strUri是http://100.1.1.1/gpsonline/GPSAPI?version=1&method=loadHistory&vid=格式的运行时报在System.Net.WebClient.OpenRead(Uriaddress)在FormServer.FormServer.GetData(StringstrUri)System.Net.WebException:在WebClient请求期间发生异常。--->System.Net.Sockets.SocketException:在一个非套接字上尝试了一个操作。在System.Net.Sockets.Socket.Poll(Int32microSeconds,SelectModemode)在System.Net.Sockets.NetworkStream.PollRead()在System.Net.Connection.StartRequest(HttpWebRequestrequest)在System.Net.Connection.SubmitRequest(HttpWebRequestrequest)在System.Net.ServicePoint.SubmitRequest(HttpWebRequestrequest,StringconnName)在System.Net.HttpWebRequest.SubmitRequest(ServicePointservicePoint)在System.Net.HttpWebRequest.GetResponse()在System.Net.WebClient.GetWebResponse(WebRequestrequest)在System.Net.WebClient.OpenRead(Uriaddress)---内部异常堆栈跟踪的结尾---在System.Net.WebClient.OpenRead(Uriaddress)在FormServer.FormServer.GetData(StringstrUri)这样的问题,无法解决呀,请教下
解决方案
解决方案二:
网络连接异常你确定在100.1.1.1的80端口上有侦听请求吗?通过浏览器可以访问?
解决方案三:
http://100.1.1.1/gpsonline/GPSAPI?version=1&method=loadHistory&vid=URL不完整啊
解决方案四:
搜索了下,居然全是java方面的错误。
解决方案五:
我估计还是和网络有关系,在浏览器里试一试,如果可以,再把防火墙关了试一试。
解决方案六:
引用1楼dongxinxi的回复:
网络连接异常你确定在100.1.1.1的80端口上有侦听请求吗?通过浏览器可以访问?
浏览器是可以访问url的,这个Url在程序中,差不多没一秒就访问一次,同时的会有10-20个线程一起访问,我怀疑是由于这样的访问频率导致的
解决方案七:
引用4楼findcaiyzh的回复:
我估计还是和网络有关系,在浏览器里试一试,如果可以,再把防火墙关了试一试。
浏览器是可以访问url的,这个Url在程序中,差不多没一秒就访问一次,同时的会有10-20个线程一起访问,我怀疑是由于这样的访问频率导致的
解决方案八:
引用2楼Z65443344的回复:
http://100.1.1.1/gpsonline/GPSAPI?version=1&method=loadHistory&vid=URL不完整啊
是不完整,输入对应的Id,就有返回数据了,浏览器是可以访问url的,这个Url在程序中,差不多没一秒就访问一次,同时的会有10-20个线程一起访问,我怀疑是由于这样的访问频率导致的
解决方案九:
WebClient低层应该是用线程池,,,楼主可以尝试用.net4.5中的httpClient来替换webclient.