how can i learn my client ip with .NET?

帅比萌擦擦* 提交于 2019-12-23 12:03:49

问题


i need my client ip from whatismyip.com. But Regex pattern is not correct i think? Can you help me this patttern?


回答1:


This can be achieved way easier using the automation interface from www.whatismyip.com, so there's no need for any 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);
        }
    }



回答2:


Have you read the comment in the obtained HTML:

Please set your code to scrape your IP from www.whatismyip.com/automation/n09230945.asp For more info, please see our "Recommended Automation Practices" thread in the Forum.

So this should get you going:

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



回答3:


Try to use
http://www.whatismyip.org/
It's much simpler.

Or you want to parse information exactly whatismyip.com?




回答4:


Do it like this instead:

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(); 

    }
}



回答5:


This is how you get the ip in ASP.NET C#

string pstrClientAddress = HttpContext.Current.Request.UserHostAddress;


来源:https://stackoverflow.com/questions/2272755/how-can-i-learn-my-client-ip-with-net

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!