Geolocation error with IP address 127.0.0.1

后端 未结 3 808
别跟我提以往
别跟我提以往 2021-01-07 12:58

OK, so I tried implementing this, http://ipaddressextensions.codeplex.com/.

It is displaying the output as:-

127.0.0.1 RESERVED ZZ

What on earth i

相关标签:
3条回答
  • 2021-01-07 13:14

    127.0.0.1 is known as the loopback address and is what your system uses to talk to itself effectively. As a result, there is no country associated with that IP address... it's everywhere on every system.

    If you put your code out onto the web you'd get more appropriate results as each visiting system would be using a public IP address to reach your server.

    0 讨论(0)
  • 2021-01-07 13:31

    127.0.0.1 is a reserved IP address which stands for localhost (the computer that the code is running on). This is a "valid" IP address for every computer that runs TCP/IP.

    IP lookups need a real IP address in order to work correctly.

    In regards to the country code - it is probably a 2 character country ISO code (see here), so you need to translate the code to the correct country. ZZ is not in the table, signifying no country.

    0 讨论(0)
  • 2021-01-07 13:32

    When you are testing from home, both server and user are one (your PC). So you can't expect it to show the country as the IP address for IIS is a self address.

    Your code seems to be fine. Also you can use a free ASP.NET supporting host to try your website online. There are many like HelioHost, 0000free, etc.

    Regarding the edit part of your question, if you are using different versions of the site for each country then wouldn't be using a switch better.

    switch(iso3166TwoLetterCode.ToUpper())
    {
        case "IN" : Response.Redirect("www.mysite.in");
        case "FR" : Response.Redirect("www.mysite.fr");
        ...
        Default : Response.Redirect("www.mysite.in");
    }
    

    I think it does look neater.

    0 讨论(0)
提交回复
热议问题