Trước đây trong phiên bản khác của asp.net, tôi sử dụng những tính chất của HttpRequest
:Nhận địa chỉ IP của client
Request.ServerVariables["REMOTE_ADDR"]
Request.UserHostAddress
Làm thế nào tôi có thể đạt được như nhau trong ASP.NET Core?
Trước đây trong phiên bản khác của asp.net, tôi sử dụng những tính chất của HttpRequest
:Nhận địa chỉ IP của client
Request.ServerVariables["REMOTE_ADDR"]
Request.UserHostAddress
Làm thế nào tôi có thể đạt được như nhau trong ASP.NET Core?
Bạn có thể sử dụng IHttpContextAccessor
:
private IHttpContextAccessor _accessor;
public Foo(IHttpContextAccessor accessor)
{
_accessor = accessor;
}
Bây giờ bạn sẽ có được địa chỉ IP theo cách này"
var ip = _accessor.HttpContext.Connection.RemoteIpAddress.ToString();
HttpContext.Connection.RemoteIpAddress
là tài sản bạn đang tìm kiếm
Và bạn có thể sử dụng Yêu cầu
var GetIp = Request.HttpContext.Connection.RemoteIpAddress.ToString();
Tôi không thể thực hiện công việc này trên DNX (toàn bộ), bất kỳ sugestions nào? Thuộc tính RemoteIpAddress rỗng trong ứng dụng của tôi ... –
@MarcinZablocki Bạn phải đăng ký nó trong Startup: 'services.AddSingleton();' –
tarn