在我的 ASP.NET Web 应用程序中,我的 Session_End 事件位于 Global.asax 中。我想要的是能够获取用户的IP地址。我尝试过的是
void Session_End(object sender, EventArgs e)
{
string ip1 = HttpContext.Current.Request.UserHostAddress;
string ip2 = Request.UserHostAddress;
}
但是 Request 在这两种情况下都为 null。如何获取用户的IP地址?
最佳答案
可以使用以下方式检索用户的 IP 地址:
HttpContext.Current.Request.UserHostAddress
但是正如您所看到的,IP 地址是从“Current.Request”中检索的,这与 Session_End 事件的情况不同,因为它不是请求。如果您特别需要 Session_End 处的 IP 地址,您可以尝试将 IP 地址保存到 Session_Start 处的 session 变量中,然后在 Session_End 处调用它。
关于ASP.NET Session_End 事件并获取用户 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11381777/