ASP.NET Core 2.0获取IP地址

在我们用来获取客户端IP地址的传统ASP.NET中Request.UserHostAddress但是这不适用于ASP.NET Core 2.0。我们需要一种不同的方式来检索HTTP请求信息。

1.在你的MVC控制器中定义一个变量

private IHttpContextAccessor _accessor;
2. DI进入控制器的构造函数
public SomeController(IHttpContextAccessor accessor)
{
    _accessor = accessor;
}
3.回传IP地址
_accessor.HttpContext.Connection.RemoteIpAddress.ToString()
RemoteIpAddress 是在类型 IPAddress ,而不是 string 它包含了IPv4,IPv6等信息,它不像经典的ASP.NET,对我们来说更有用。

你可能感兴趣的:(ASP.NET Core 2.0获取IP地址)