我试过了Request.UserHostAddress;
,但API控制器在请求中没有UserHostAddress。如何在ASP.NET MVC API控制器中获取用户IP
14
A
回答
16
IP = ((HttpContextBase)request.Properties["MS_HttpContext"]).Request.UserHostAddress;
6
根据this,更完整的方法是:
private string GetClientIp(HttpRequestMessage request)
{
if (request.Properties.ContainsKey("MS_HttpContext"))
{
return ((HttpContext)request.Properties["MS_HttpContext"]).Request.UserHostAddress;
}
else if (request.Properties.ContainsKey(RemoteEndpointMessageProperty.Name))
{
RemoteEndpointMessageProperty prop;
prop = (RemoteEndpointMessageProperty)this.Request.Properties[RemoteEndpointMessageProperty.Name];
return prop.Address;
}
else
{
return null;
}
}
在过去,对MVC 3个项目(不API,)我们以前用的是以下几点:
string IPAddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (String.IsNullOrEmpty(IPAddress))
IPAddress = Request.ServerVariables["REMOTE_ADDR"];
+1
我最终做了一些额外的研究,因为它会觉得奇怪,你会拿起服务器变量中的请求标头。 context.Request.ServerVariables [“HTTP_X_FORWARDED_FOR”]正在挑选代理服务器和负载均衡器发送的X-Forward-For请求头。 – muglio
11
我正在使用下面的代码,它适用于我......
string ipAddress = System.Web.HttpContext.Current.Request.UserHostAddress;
+0
它给出主机地址 –
相关问题
- 1. 在ASP.NET MVC中获取用户IP
- 2. 如何在MVC 4控制器中获取客户端IP地址?
- 3. 如何获取Symfony2控制器中的用户IP地址?
- 4. 如何在Grails控制器中获取客户端IP地址?
- 5. ASP.NET MVC 3:如何在控制器方法中获取用户角色?
- 6. 如何在ASP.NET MVC中获取客户端的IP地址?
- 7. asp.net MVC Project-如何在控制器中使用API url
- 8. 如何获取ASP.net Web API控制器中响应的长度?
- 9. ASP.NET MVC获取ID参数控制器
- 10. 如何从asp.net中的控制器获取文件名mvc
- 11. ASP.NET(OWIN)身份:如何从Web API控制器获取用户ID?
- 12. ASP.NET MVC控制器方法获取外部API
- 13. ASP.NET Identity2 - 如何使用AllowAnonymous控制器获取用户ID?
- 14. 如何在asp.net中使用ajax请求从控制器中获取数据mvc
- 15. 在ASP.NET MVC控制器中的SelectList中获取所有项目
- 16. MVC调用API控制器PostAsJsonAsync动作方法名称获取
- 17. 如何从ASP.NET MVC控制器动态获取数据到jQuery?
- 18. 在Asp.Net中获取用户名核心控制器
- 19. 如何在Symfony2控制器中获取外部IP地址?
- 20. 如何从控制器在asp.net mvc的
- 21. 如何在ASP.Net MVC 3 Web API 2.1控制器中读取POST数据?
- 22. c#身份在api控制器中获取登录用户
- 23. 获取json数据在asp.net中的控制器动作mvc
- 24. 如何在ASP.NET MVC中获取控制器中的路由名称?映射时
- 25. 如何在ASP.NET MVC中的控制器中获取本地资源?
- 26. 控制器在asp.net中的重用mvc
- 27. 在ASP.net MVC控制器中使用Url.Content
- 28. 如何从Umbraco API控制器获取发布的内容ASP.NET
- 29. 用户控制vs Raw中的ASP.NET MVC HTML(无用户控制)?
- 30. 在MVC控制器中使用Web Api
对不起,我很困惑。检查这个其他问题:http://stackoverflow.com/questions/9565889/get-the-ip-address-of-the-remote-host –