访问Asp.Net 5中的客户端IP地址(REMOTE_ADDR)
本文关键字:地址 REMOTE ADDR IP 客户端 Net Asp 访问 | 更新日期: 2023-09-27 18:25:13
我试图在asp.net中获取ServerVariables["REMOTE_ADDR"]。
这是我的旧代码(webapi 2):
private Logn GLog(System.Web.Routing.RequestContext requestContext)
{
Ln Log = new LogInformation();
Lg.IP = requestContext.HttpContext.Request.ServerVariables["REMOTE_ADDR"];
Lg.RemoteIP = requestContext.HttpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
............................
根据我的经验,他们将"路由.RequestContext"更改为
vNext版本中的"IHttpContextAccessor"。
如何使用IHttpContextAccessor实现上述结果?
这导致我在"ServerVariables"部分出现错误:
private Logn GLog(IHttpContextAccessor requestContext)
{
Ln Log = new LogInformation();
Lg.IP = requestContext.HttpContext.Request.ServerVariables["REMOTE_ADDR"];
}
您需要使用ConnectionInfo.RemoteIpAddress
:
private Logn GLog(IHttpContextAccessor contextAccessor)
{
Ln Log = new LogInformation();
Lg.IP = contextAccessor.HttpContext.Connection.RemoteIpAddress.ToString();
// ...
}