[英]How do you get the User's IP Address in Castle MVC (Monorail)?
在CastleMVC应用程序的控制器操作中,如何获取用户的IP地址?
我认为在asp.net mvc中它会是Request.ServerVariables["REMOTE_ADDR"]
,但我找不到Castle中的等价物。
(我知道潜在的代理问题等,请求中报告的地址很好)
Castle Monorail以及ASP.NET MVC作为ASP.NET运行时的优雅MVC外观。
因此,可以使用ASP.NET MVC和Monorail完成ASP.NET运行时可以完成的所有操作(除了像ViewState这样的WebForms特定内容)。
因此,您始终可以使用静态HttpContext.Current方法获取当前ASP.NET的HttpContext。
从Monorail,您还可以使用IEngineContext的.UnderlyingContext属性来访问ASP.NET HttpContext。
具体来说,在Monorail中,您可以使用当前IRequest上的便捷属性UserHostAddress获取客户端报告的IP。
例如在控制器的动作中:
var clientIP = Request.UserHostAddress;
我相信它:
HttpContext.Request.ServerVariables["REMOTE_ADDR"]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.