相关疑难解决方法(0)

如何在ASP.NET CORE中获取客户端IP地址?

你能否告诉我如何在使用MVC 6时在ASP.NET中获取客户端IP地址Request.ServerVariables["REMOTE_ADDR"]不起作用.

c# asp.net-core-mvc asp.net-core

166
推荐指数
13
解决办法
9万
查看次数

Asp Net Web API 2.1获取客户端IP地址

您好我需要获取请求web api中的某些方法的客户端IP,我试图从这里使用此代码但它总是返回服务器本地IP,如何以正确的方式获取?

HttpContext.Current.Request.UserHostAddress;
Run Code Online (Sandbox Code Playgroud)

来自其他问题:

public static class HttpRequestMessageExtensions
    {
        private const string HttpContext = "MS_HttpContext";
        private const string RemoteEndpointMessage = "System.ServiceModel.Channels.RemoteEndpointMessageProperty";

        public static string GetClientIpAddress(this HttpRequestMessage request)
        {
            if (request.Properties.ContainsKey(HttpContext))
            {
                dynamic ctx = request.Properties[HttpContext];
                if (ctx != null)
                {
                    return ctx.Request.UserHostAddress;
                }
            }

            if (request.Properties.ContainsKey(RemoteEndpointMessage))
            {
                dynamic remoteEndpoint = request.Properties[RemoteEndpointMessage];
                if (remoteEndpoint != null)
                {
                    return remoteEndpoint.Address;
                }
            }

            return null;
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-web-api

107
推荐指数
7
解决办法
11万
查看次数