如何在WebMethod中获取呼叫者的IP地址?
时间:2020-03-06 14:41:35 来源:igfitidea点击:
如何在WebMethod中获取呼叫者的IP地址?
[WebMethod] public void Foo() { // HttpRequest... ? - Not giving me any options through intellisense... }
使用Cand ASP.NET
解决方案
HttpContext.Current.Request.UserHostAddress是我们想要的。
HttpContext实际上在WebService基类中可用,因此只需使用Context.Request(或者也指向当前上下文的HttpContext.Current)即可访问HttpRequest提供的成员。
试试这个:
string ipAddress = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
尚未在webMethod中尝试过,但我在标准HttpRequests中使用了它
尝试:
Context.Request.UserHostAddress
请注意。 IP地址不能用于唯一标识客户端。 NAT防火墙和公司代理无处不在,并将许多用户隐藏在一个IP后面。