Sign In| Join
Get Help:Ask a Question in our Forums|Report a Bug|More Help Resources
Last post Apr 08, 2012 10:05 AM by luckywiky
Member
2 Points
1 Post
Apr 08, 2012 10:05 AM|LINK
public static string GetClientIp(HttpRequestMessage request) { string ip = string.Empty; if (request.Properties.ContainsKey("MS_HttpContext")) { HttpContextBase context = (HttpContextBase)request.Properties["MS_HttpContext"]; if (context.Request.ServerVariables["HTTP_VIA"] != null) { // 穿过代理服务器取远程用户真实IP地址 ip = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); } else { ip = context.Request.ServerVariables["REMOTE_ADDR"].ToString(); } } return ip; }
luckywiky
Member
2 Points
1 Post
Re: How to get the client IP address for the current controller call.
Apr 08, 2012 10:05 AM|LINK
public static string GetClientIp(HttpRequestMessage request) { string ip = string.Empty; if (request.Properties.ContainsKey("MS_HttpContext")) { HttpContextBase context = (HttpContextBase)request.Properties["MS_HttpContext"]; if (context.Request.ServerVariables["HTTP_VIA"] != null) { // 穿过代理服务器取远程用户真实IP地址 ip = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); } else { ip = context.Request.ServerVariables["REMOTE_ADDR"].ToString(); } } return ip; }