zoukankan      html  css  js  c++  java
  • 获取ip地址及城市信息

    大家好,今天给大家分享的是一个简单的知识获取登录用户的ip地址及城市信息,lz是一个小白,如果有哪些错误的地方  欢迎大家指出

    东西很简单,直接上代码

     [HttpPost]
            public string GetIP()
            {
                string loginip = "";
                //Request.ServerVariables[""]--获取服务变量集合   
                if (Request.ServerVariables["REMOTE_ADDR"] != null) //判断发出请求的远程主机的ip地址是否为空  
                {
                    //获取发出请求的远程主机的Ip地址  
                    loginip = Request.ServerVariables["REMOTE_ADDR"].ToString();
                }
                //判断登记用户是否使用设置代理  
                else if (Request.ServerVariables["HTTP_VIA"] != null)
                {
                    if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
                    {
                        //获取代理的服务器Ip地址  
                        loginip = Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
                    }
                    else
                    {
                        //获取客户端IP  
                        loginip = Request.UserHostAddress;
                    }
                }
                else
                {
                    //获取客户端IP  
                    loginip = Request.UserHostAddress;
                }
                string ipv4 = String.Empty;
                foreach (IPAddress ipAddr in Dns.GetHostEntry(loginip).AddressList)
                {
                    if (ipAddr.AddressFamily.ToString() == "InterNetwork")
                    {
                        ipv4 = ipAddr.ToString();
                    }
                }
              //  return loginip;  
                return ipv4;
            }

    这个是后台代码   获取ip地址的

    下面的是获取城市信息的js代码

                    //通过调用新浪IP地址库接口查询用户当前所在国家、省份、城市、运营商信息
                    $.getScript('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js', function (_result) {
                        if (remote_ip_info.ret == '1') {
                            console.log('国家:' + remote_ip_info.country + '
    省:' + remote_ip_info.province + '
    市:' + remote_ip_info.city + '
    区:' + remote_ip_info.district + '
    ISP:' + remote_ip_info.isp + '
    类型:' + remote_ip_info.type + '
    其他:' + remote_ip_info.desc);
                        } else {
                            alert('没有找到匹配的IP地址信息!');
                        }
                    });
  • 相关阅读:
    Silverlight第三方控件收集
    我们三十以后才明白
    修复编译Silverlight"不能找到AppManifest.xaml”的错误
    Android消息通知
    理解和认识udev
    QT进度条
    WARNING: Application does not specify an API level requirement!
    Linux设备驱动中的异步通知与异步I/O
    Qtopia2.2.0 的配置和交叉编译
    Android Menus
  • 原文地址:https://www.cnblogs.com/passerby-jia/p/7363704.html
Copyright © 2011-2022 走看看