现在有一个内网请求是在服务器上可以访问,在个人电脑上无法访问。
能否实现一个验证机制,使得调试的时候能快速的知道请求地址是否可以访问?
目前是GetResponse,在请求访问不了的情况下,需要20秒之后才进入catch异常。
查了这个地址:http://www.baiwanzhan.com/site/t121032/
但是timeout和ReadWriteTimeout设置之后没有其效果。
专门使用一个HttpWebRequest来验证,将这个对象的超时时间设置得很短就行。
var t = Dns.GetHostEntryAsync("www.baiwanzhan.com");
if(!t.Wait(2 * 1000))
throw timeout;
Socket sd = new Socket;
var t2 = sd.Connect(t.Result);
if(!t2.Wait(1 * 1000))
throw timeout;
Ping p=new Ping();
PingReply pr=p.Send("192.168.1.1");
string r=pr.Status.ToString();
if(r=="Success"){true}