首页 > 代码库 > C# 使用WebClient时,在多网卡时,指定IP发送Web请求

C# 使用WebClient时,在多网卡时,指定IP发送Web请求

需要定义一个类,重写GetWebRequest,在方法内,指定IP地址

 

    public class MyWebClient : WebClient    {        private IPAddress ipAddress;        public MyWebClient(IPAddress ipAddress)        {            this.ipAddress = ipAddress;        }        protected override WebRequest GetWebRequest(Uri address)        {            WebRequest request = (WebRequest)base.GetWebRequest(address);            ((HttpWebRequest)request).ServicePoint.BindIPEndPointDelegate += (servicePoint, remoteEndPoint, retryCount) =>            {                return new IPEndPoint(ipAddress, 0);            };            return request;        }    }

 

使用时,  在实例化构造函数中传入所需IP即可

C# 使用WebClient时,在多网卡时,指定IP发送Web请求