2010-02-16 8 views
5

मुझे whatismyip.com से अपने क्लाइंट आईपी की आवश्यकता है। लेकिन Regex पैटर्न सही नहीं है मुझे लगता है? क्या आप इस पटल में मेरी मदद कर सकते हैं?मैं अपने क्लाइंट आईपी को .NET के साथ कैसे सीख सकता हूं?

+2

तुम क्यों कर रहे हैं अपने आईपी को पुनः प्राप्त करने के लिए whatismyip.com का उपयोग कर? :) – Younes

+1

बंद करने के लिए वोटिंग। दो बार एक ही सवाल मत पूछो। यदि आपका प्रश्न आपको उत्तर नहीं देता है, तो इसे अधिक विस्तार से विस्तारित करने का प्रयास करें। http://stackoverflow.com/questions/2272483/how-can-i-get-ip-address-of-my-3g-modem –

+0

इसके लायक होने के लिए, मुझे विश्वास है कि आपके मूल प्रश्न के उत्तर में यह चाल चलनी चाहिए: http://stackoverflow.com/questions/2272483/how-can-i-get-ip-address-of-my-3g-modem/2272673#2272673 –

उत्तर

3

यह www.whatismyip.com से स्वचालन इंटरफ़ेस का उपयोग कर रास्ता आसान प्राप्त किया जा सकता, इसलिए किसी भी regex के लिए कोई ज़रूरत नहीं है:

static void Main(string[] args) 
    { 
     const string url = "http://www.whatismyip.com/automation/n09230945.asp"; 

     var client = new WebClient(); 
     try 
     { 
      var myIp = client.DownloadString(url); 
      Console.WriteLine("Your IP: " + myIp); 
     } 
     catch (Exception ex) 
     { 
      Console.WriteLine("Error contacting website: " + ex.Message); 
     } 
    } 
+0

अच्छा एक अच्छा और छोटा –

0

उपयोग करने के लिए
http://www.whatismyip.org/
यह बहुत आसान है की कोशिश करो।

या आप जानकारी को वास्तव में whatismyip.com को पार्स करना चाहते हैं?

+0

मुझे लगता है कि वे पहले से ही इस पर बहस कर रहे हैं। आप देर हो चुकी हैं ....... –

0

बजाय इस तरह करें:

class Program 
{ 
    static void Main(string[] args) 
    { 
     string whatIsMyIp = "http://www.whatismyip.com/automation/n09230945.asp"; 
     WebClient wc = new WebClient(); 
     UTF8Encoding utf8 = new UTF8Encoding(); 
     string requestHtml = ""; 
     try 
     { 
      requestHtml = utf8.GetString(wc.DownloadData(whatIsMyIp)); 
     } 
     catch (WebException we) 
     { 
      // do something with exception 
      Console.Write(we.ToString()); 
     } 

     IPAddress externalIp = null; 
     externalIp = IPAddress.Parse(requestHtml); 

     Console.Write("IP Numaram:" + externalIp.ToString()); 
     Console.ReadKey(); 

    } 
} 
4

आप प्राप्त HTML में टिप्पणी पढ़ा है:

www.whatismyip.com/ से आपके आईपी स्क्रैप करने के लिए अपने कोड सेट करें स्वचालन/n09230945.asp अधिक जानकारी के लिए, कृपया हमारे "अनुशंसित स्वचालन प्रथाओं" फोरम में थ्रेड देखें।

तो यह आप के लिए जा रहा मिलना चाहिए:

using (var client = new WebClient()) 
{ 
    Console.WriteLine(client.DownloadString(
     "http://www.whatismyip.com/automation/n09230945.asp")); 
} 
+0

वैरिएबल द्वारा उपयोग किए जाने वाले संसाधन को स्वचालित रूप से हटाने के लिए एक अच्छी तकनीक है .. –

0

इस तरह आप में ASP.NET सी # आईपी मिल

string pstrClientAddress = HttpContext.Current.Request.UserHostAddress; 
संबंधित मुद्दे