2016-09-17 31 views
0

我的方法獲取的extern IP:它基本上返回的extern IPadressC#中使用的WebRequest需要很長時間

public static string Get_IP() 
{ 
    string url = "http://checkip.dyndns.org"; 
    WebRequest req = WebRequest.Create(url); 
    WebResponse resp = req.GetResponse(); 
    StreamReader sr = new StreamReader(resp.GetResponseStream()); 
    string response = sr.ReadToEnd().Trim(); 
    string[] a = response.Split(':'); 
    string a2 = a[1].Substring(1); 
    string[] a3 = a2.Split('<'); 
    string a4 = a3[0]; 
    return a4; 
} 

我不能明白,爲什麼我的方法需要很長的時間來加載IpAdress,有時它會立即回吧!

ps:我檢查了我的互聯網連接,它工作完美,我不認爲它的連接速度問題!

謝謝!

+0

http://stackoverflow.com/questions/11794413/get-endpoint-ip-from-url – Oluwafemi

回答

2

隨着這段代碼這將是快速

  string externalip = new WebClient().DownloadString("http://icanhazip.com"); 
      Console.WriteLine(externalip); 
+0

謝謝主席先生! –

+0

@CruDy接受答案,如果它幫助你。 –

+0

您能否爲未來的參考添加解釋? – Caramiriel