我想让ServerVariables"REMOTE_ADDR"在asp.net。
这是我的旧代码(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"];
............................
据我所知,他们把"Routing.RequestContext“改为
"IHttpContextAccessor“中的vNext版本。
如何使用IHttpContextAccessor实现上述结果?
这给了我在"ServerVariables“部件上的错误:
private Logn GLog(IHttpContextAccessor requestContext)
{
Ln Log = new LogInformation();
Lg.IP = requestContext.HttpContext.Request.ServerVariables["REMOTE_ADDR"];
}
发布于 2015-11-30 12:54:46
您需要使用ConnectionInfo.RemoteIpAddress
来代替:
private Logn GLog(IHttpContextAccessor contextAccessor)
{
Ln Log = new LogInformation();
Lg.IP = contextAccessor.HttpContext.Connection.RemoteIpAddress.ToString();
// ...
}
https://stackoverflow.com/questions/33999011
复制相似问题