zoukankan      html  css  js  c++  java
  • 获取ip

     #region 获得客户端IP

            /// <summary>
            /// 获得客户端IP
            /// </summary>
            /// <returns></returns>
            public string GetClientIp()
            {
                var ip = "127.0.0.1";
                //穿过代理服务器取远程用户真实IP地址
                if (HttpContext.Current == null
                    || HttpContext.Current.Request == null
                    || HttpContext.Current.Request.ServerVariables == null)
                {
                }
                //CDN加速后取到的IP     
                else if (HttpContext.Current.Request.Headers["Cdn-Src-Ip"] != null)
                {
                    ip = HttpContext.Current.Request.Headers["Cdn-Src-Ip"];
                }
                else if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
                {
                    ip = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
                }
                else if (HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] != null)
                {
                    ip = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
                }
                else if (HttpContext.Current.Request.ServerVariables["HTTP_CLIENT_IP"] != null)
                {
                    ip = HttpContext.Current.Request.ServerVariables["HTTP_CLIENT_IP"].ToString();
                }
                else if (HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] != null)
                {
                    ip = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
                }
                else
                {
                    ip = HttpContext.Current.Request.UserHostAddress;
                }
                return ip;
            }

            #endregion 获得客户端IP

  • 相关阅读:
    MVC5+EF6简单实例以原有SQLServer数据库两表联合查询为例
    ArcGIS生成根据点图层生成等值面并减小栅格锯齿的操作步骤
    EF6+MVC5之Oracleo数据库的Code First方式实现
    jquery写的tab切换效果 非常简单
    APP消息推送是否进入消息中心和click、receive事件分析
    Android APP切换到后台接收不到推送消息
    js写的简单轮播图
    凉凉的笔记 two day
    凉凉的笔记 one.day
    在SQL Server数据库中批量导入数据的四种方法
  • 原文地址:https://www.cnblogs.com/sll-fuling/p/9754078.html
Copyright © 2011-2022 走看看