как я могу изучить свой клиентский IP с.NET?

мне нужен мой клиентский IP из whatismyip.com. Но шаблон Regex не корректен, я думаю? Можно ли помочь мне этот шаблон?

5
задан John Saunders 21 February 2010 в 16:48
поделиться

5 ответов

Этого можно достичь гораздо проще, используя интерфейс автоматизации с сайта 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);
        }
    }
3
ответ дан 14 December 2019 в 08:49
поделиться

Читали ли вы комментарий в полученном HTML:

Пожалуйста, установите код для очистки вашего IP-адреса с www.whatismyip.com/automation/n09230945.asp Дополнительную информацию можно найти в ветке «Рекомендуемые методы автоматизации» на форуме.

Итак, это должно помочь вам:

using (var client = new WebClient())
{
    Console.WriteLine(client.DownloadString(
        "http://www.whatismyip.com/automation/n09230945.asp"));
}
4
ответ дан 14 December 2019 в 08:49
поделиться

Попробуйте использовать
http://www.whatismyip.org/
Это намного проще.

Или вы хотите разобрать информацию именно whatismyip.com?

0
ответ дан 14 December 2019 в 08:49
поделиться

Сделайте это так:

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

    }
}
0
ответ дан 14 December 2019 в 08:49
поделиться

Вот как вы получаете IP-адрес в ASP.NET C #

string pstrClientAddress = HttpContext.Current.Request.UserHostAddress;
0
ответ дан 14 December 2019 в 08:49
поделиться