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智能a... 黑科技科技(wepoke智能ai)wepower使用说明书(wepOkE)素来是真的有挂(确实有挂)...
黑科技模拟器(wepoke智能... WePoker透视辅助工具核心要点解析‌,黑科技模拟器(wepoke智能ai)wepoke是机器发牌...
黑科技脚本(wepokeai代... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游戏中打牌都...
黑科技辅助挂(wepoke真的... 黑科技辅助挂(wepoke真的有挂)wepoke 软件(wEPOKE)固有真的有挂(有挂猫腻)-哔哩...
黑科技辅助挂(wepoke黑科... 黑科技辅助挂(wepoke黑科技)wepoke软件透明挂演示(wEpOke)一直真的有挂(真的有挂)...
黑科技app(wepoke真的... 此外,数据分析德州()辅助神器app还具备辅助透视行为开挂功能,通过对客户透明挂的深入研究,你可以了...
黑科技智能ai(wepoke辅... 黑科技智能ai(wepoke辅助插件)wepoke软件透明(WEPOke)先前是有挂(果真有挂)-哔...
黑科技模拟器(wepoke透明... 黑科技模拟器(wepoke透明黑科技)wepoke德州扑克用ai代打(WEPOKE)最初存在有挂(有...
黑科技插件(wepoke辅助插... 黑科技插件(wepoke辅助插件)wepoke软件透明(WEPOke)从来是真的有挂(有挂解惑)-哔...
黑科技美元局(wepoke智能... 黑科技美元局(wepoke智能ai)wepoke辅助真的假的(wepoKE)原先真的有挂(竟然有挂)...