WebClient 请求期间发生异常--在一个非套接字上尝试了一个操作

问题描述

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.

时间: 2024-10-22 03:03:01

WebClient 请求期间发生异常--在一个非套接字上尝试了一个操作的相关文章

webclient DownloadFile 在WebClient请求期间出现异常

问题描述 使用webClient.DownloadFileAsync正常,但使用webclientDownloadFile抛异常:在WebClient请求期间出现异常.求解 解决方案 解决方案二:已经解决问题解决方案三:怎么解决的,求方法,我也遇到同样的问题

怎么解决C#套接字编程异常"以一种访问权限不允许的方式做了一个访问套接字的尝试"

问题描述 我想问一下,我在使用c#套接字编程做了一个ping应用程序.调试的时候出现一个异常,"以一种访问权限不允许的方式做了一个访问套接字的尝试".网上说是端口或ip冲突,但是我的程序里没有明确使用端口号这些,你觉得可能是什么原因? 解决方案 解决方案二:Socket构造函数的参数搭配错误解决方案三:引用1楼Poopaye的回复: Socket构造函数的参数搭配错误 每次执行到socketsocket=newsocket(AddressFamily.InterNetwork,sock

[SocketException (0x2747): 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。 58.64.137.80:81]

问题描述 [SocketException(0x2747):由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作.58.64.137.80:81]System.Net.Sockets.Socket.DoConnect(EndPointendPointSnapshot,SocketAddresssocketAddress)+239System.Net.Sockets.Socket.InternalConnect(EndPointremoteEP)+35System.Net.ServicePoi

我用SOCKET接收文件,为什么会出现着错误:由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作

问题描述 我用SOCKET接收文件,为什么会出现着错误:由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作程序下,发送方:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Net.Sockets;usingSystem

以一种访问权限不允许的方式做了一个访问套接字的尝试,errCode=10013

问题描述 localEdpt=newIPEndPoint(IPAddress.Any,SERV_PORT);servListen=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);servListen.Bind(localEdpt);servListen.Listen(100);一运行servListen.Bind(localEdpt);就提示:e.Message=以一种访问权限不允许的方式做了一个访

System.Net.Sockets.SocketException: 以一种访问权限不允许的方式做了一个访问套接字的尝试

问题描述 用C#做的新建的网络原始套接字来发送数据包是出现以下错误:"System.Net.Sockets.SocketException:以一种访问权限不允许的方式做了一个访问套接字的尝试"求大神指导!!!!!!!! 解决方案 解决方案二:引用错误,访问被禁止解决方案三:引用1楼zhang1struts1yun的回复: 引用错误,访问被禁止 具体的解决方案有没有,在VS2008上能运行没错误,但是用vs2010以上版本就有错误!!!!解决方案四:如果用到SocketType.Raw的

WCF 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作 急急急。。。

问题描述 求教下这是什么问题导致的? 解决方案 解决方案二:没有神的回复?

求助大神!如何解决由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作

问题描述 用C#写的一个连接多个服务端的软件,用任务管理器查看,内存不会上涨,句柄数也稳定,但是会出现标题上的问题,求大神们解答啊!谢谢! 解决方案 解决方案二:你连接多个服务端,好歹每个服务端对应一个TCPClint对象吧,发送接收的数组最好也分开,各用各的解决方案三:引用1楼Z65443344的回复: 你连接多个服务端,好歹每个服务端对应一个TCPClint对象吧,发送接收的数组最好也分开,各用各的 因为是同时连接的,我就是分开使用的解决方案四:怎么就没人来回答啊解决方案五:每当可读时,就要

JDK1.4非阻塞套接字API概述

J2SE 1.4版引入了非阻隔套接字(Nonblocking sockets),它允许在网络通信应用程序和没有阻隔的进程中使用套接字.本文将详细介绍什么是非阻隔套接字(Nonblocking sockets)及其工作原理和用途. 从Java 1.4起,程序员便能用一组新的API来进行I/O操作.这是JSR 51项目的结果,自2000年1月的Java 1.4 beta版,程序员便可以使用JSR 51了.在Java 1.4中增加了一些非常重要的新技术来处理诸如在文件和套接字上进行高性能的读/写操作,