C#-如何测试代理是否正常工作?我有一大堆代理服务器及其相应的端口。我如何检查它们是否正常工作?工作?好吧,您必须使用它们来查看它们是否有效。如果你想看看他们是否在线,我想ping是第一步。.NET中有一个Ping类。使用System.Net.NetworkInformation;privatestaticboolCanPing(字符串地址){Pingping=newPing();尝试{PingReplyreply=ping.Send(address,2000);如果(回复==null)返回false;返回(回复.Status==IPStatus.Success);}catch(PingExceptione){返回false;我喜欢通过代理进行WhatIsMyIP检查作为测试。publicstaticvoidTestProxies(){varlowp=newList{newWebProxy("1.2.3.4",8080),newWebProxy("5.6.7.8",80)};平行线。ForEach(lowp,wp=>{varsuccess=false;varerrorMsg="";varsw=newStopwatch();try{sw.Start();varresponse=newRestClient{BaseUrl="https://webapi.theproxisright.com/",Proxy=wp}.Execute(newRestRequest{Resource="api/ip",Method=Method.GET,Timeout=10000,RequestFormat=DataFormat.Json});if(response.ErrorException!=null){throwresponse.ErrorException;}success=(response.Content==wp.Address.Host);}catch(Exceptionex){errorMsg=ex.Message;}最后{sw.Stop();Console.WriteLine("成功:"+success.ToString()+"|连接时间:"+sw.Elapsed.TotalSeconds+"|ErrorMsg"+errorMsg);}});但是,我可能会建议明确测试不同的类型(即http、https、socks4、socks5)。以上仅检查https。在为https://theproxisright.com/#proxyChecker构建ProxyChecker时,我从上面的代码开始,然后最终不得不扩展其他功能/类型。试试这个:以上是C#学习教程:C#-如何测试代理是否正常工作?如果分享的内容对你有用,需要了解更多C#学习教程,希望你多多关注——publicstaticboolSoketConnect(stringhost,intport){varis_success=false;try{varconnsock=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);connsock.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.SendTimeout,200);系统.Threading.Thread.Sleep(500);varhip=IPAddress.Parse(host);varipep=newIPEndPoint(髋关节,端口);connsock.Connect(ipep);如果(connsock.Connected){is_success=true;}connsock.Close();}赶上(异常){is_success=false;}返回成功;}stringstrIP="10.0.0.0";intintPort=12345;publicstaticboolPingHost(stringstrIP,intintPort){boolblProxy=false;尝试{TcpClientclient=newTcpClient(strIP,intPort);blProxy=真;}catch(Exceptionex){MessageBox.Show("Errorpinghost:'"+strIP+":"+intPort.ToString()+"'");返回假;}返回blProxy;}publicvoidProxy(){booltt=PingHost(strIP,intPort);如果(tt==true){MessageBox.Show(“ttTrue”);}else{MessageBox.Show("ttFalse");}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:
