ASP.NETMVC获取客户端IP的范围不同于IP检测工具。
创始人
2024-09-19 05:30:37
0

在ASP.NET MVC应用程序中,可以使用HttpContext.Current.Request.UserHostAddress来获取客户端IP地址。然而,这个方法获取的IP地址可能和其他IP检测工具(如whatismyipaddress.com)返回的IP地址不一样,这是因为前者默认返回的是X-Forwarded-For标头中指定的IP地址(如果有的话),而后者返回的是客户端的公共IP地址。

为了解决这个问题,可以使用以下代码来获取客户端真正的IP地址:

public static string GetUserIPAddress()
{
    string ipAddress = null;
    try
    {
        if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
        {
            // The IP address is in the X-Forwarded-For header.
            ipAddress = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
        }
        else if (HttpContext.Current.Request.UserHostAddress.Length != 0)
        {
            // The IP address is not in the X-Forwarded-For header, so use the default behavior.
            ipAddress = HttpContext.Current.Request.UserHostAddress;
        }
    }
    catch (Exception ex)
    {
        // Log the error.
    }
    return ipAddress;
}

这段代码将先检查HTTP_X_FORWARDED_FOR标头,如果有则认为是客户端的真正IP地址,否则使用默认行为获取客户端IP地址。

相关内容

热门资讯

透视教程(wepOkE)透明挂... 透视教程(wepOkE)透明挂辅助工具(wepoke辅助插件)确实真的是有挂(详细透视2025教程)...
透视教程(wepower有外挂... 透视教程(wepower有外挂)aapoker辅助工具(详细辅助2025新版教程)先前是有挂1、很好...
透视免费(WEPOke)透明挂... 透视免费(WEPOke)透明挂辅助代打(wepokeai代打)确实真的有挂(详细透视安装教程)准备好...
透视肯定(wpk透视辅助)we... 透视肯定(wpk透视辅助)wepoke的机制(详细辅助攻略方法)其实存在有挂1、wpk透视辅助ai机...
透视ai(WePoke)透视辅... 透视ai(WePoke)透视辅助工具(wepower有外挂)切实存在有挂(详细透视科技教程);最新版...
透视教学(wpk透视辅助)we... 透视教学(wpk透视辅助)wepoke的机制(详细辅助攻略方法)竟然真的有挂wpk透视辅助辅助器中分...
透视真的(wePoKe)透视辅... 您好,wepoke辅助插件这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩...
透视软件(微扑克辅助器ios)... 透视软件(微扑克辅助器ios)微扑克辅助机器人(详细辅助教你攻略)原生存在有挂1、这是跨平台的微扑克...
透视系统(wepoKe)透明挂... 透视系统(wepoKe)透明挂辅助软件(wepokeai代打的胜率)其实有挂(详细透视技巧教程);致...
透视脚本(wepoke真的有挂... 透视脚本(wepoke真的有挂)德扑ai智能机器人线上代打(详细辅助攻略教程)原来真的有挂1、超多福...