DotNet獲取客戶端的IP地址

DotNet獲取客戶端的IP地址

public static string GetClientIpAddress(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;
        }
    }
    if (request.Properties.ContainsKey(OwinContext))
    {
        dynamic ctx = request.Properties[OwinContext];
        if (ctx != null)
        {
            return ctx.Request.RemoteIpAddress;
        }
    }
    return null;
}
複製代碼

原文鏈接bash

相關文章
相關標籤/搜索