zoukankan      html  css  js  c++  java
  • ASP.NET获取IP的6种方法

    服务端:

    //方法一

    HttpContext.Current.Request.UserHostAddress;

    //方法二

    HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

    //方法三

    string strHostName = System.Net.Dns.GetHostName();

    string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();

    //方法四(无视代理)

    HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

    客户端:

    //方法五

    var ip = '<!--#echo var="REMOTE_ADDR"-->';

    alert("Your IP address is "+ip);

    //方法六(无视代理)

    function GetLocalIPAddress()

    {

    var obj = null;

    var rslt = "";

    try

    {

    obj = new ActiveXObject("rcbdyctl.Setting");

    rslt = obj.GetIPAddress;

    obj = null;

    }

    catch(e)

    {

    //

    }

    return rslt;

    }

    来自印度的MCT Maulik Patel提供了一种服务端的解决方案,很好:

    if(Context.Request.ServerVariables["HTTP_VIA"]!=null) // using proxy

    {

    ip=Context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); // Return real client IP.

    }

    else// not using proxy or can't get the Client IP

    {

    ip=Context.Request.ServerVariables["REMOTE_ADDR"].ToString(); //While it can't get the Client IP, it will return proxy IP.

    }

    外加一种 最实用的:

     这个要using System.Net;

            /// <summary>
            /// 获取ip地址
            /// </summary>
            /// <returns></returns>
            private string GetIpAddress()
            {
                string ipAddress = "127.0.0.1";
                IPAddress[] ips = Dns.GetHostAddresses(Dns.GetHostName());
                foreach (IPAddress ip in ips)
                {
                    if (ip.AddressFamily.ToString().ToLower().Equals("internetwork"))
                    {
                        ipAddress = ip.ToString();
                        return ipAddress;
                    }
                }
    
                return ipAddress;
            }
    
  • 相关阅读:
    Java面向对象编程 -1.3
    Java面向对象编程 -1.2
    Java面向对象编程 -1
    Java基础 -5.3
    Java基础 -5.2
    oracle 新建用户
    js密码的匹配正则
    oracle导入和导出和授权
    oracle存储过程语法
    java.lang.NumberFormatException: For input string: "26.0"
  • 原文地址:https://www.cnblogs.com/yplong/p/4078120.html
Copyright © 2011-2022 走看看