在我们用来获取客户端IP地址的传统ASP.NET中Request.UserHostAddress
。但是这不适用于ASP.NET Core 2.0。我们需要一种不同的方式来检索HTTP请求信息。
1.在你的MVC控制器中定义一个变量
1 |
private IHttpContextAccessor _accessor; |
2. DI进入控制器的构造函数
3.回传IP地址
1 |
_accessor.HttpContext.Connection.RemoteIpAddress.ToString() |
这RemoteIpAddress
是在类型IPAddress
,而不是string
。它包含了IPv4,IPv6等信息,它不像经典的ASP.NET,对我们来说更有用。
from:https://blog.csdn.net/yzj_xiaoyue/article/details/79200714