簡體   English   中英

獲取HTTP客戶端的IP地址

[英]Get IP-address of HTTP client

我嘗試獲取將HTTP請求發送到服務器的客戶端的IP地址和端口。 我使用了HttpListenerRequest類的屬性。 UserHostAddress屬性返回服務器的IP和端口,而不返回客戶端的端口。 RemoteEndPoint返回一些ip和端口,但它不是真正的客戶端ip(我知道客戶端請求來自端口1234),並且每次返回不同的數據時(我不知道為什么)。 我該如何解決? 也許我應該設置HTTP標頭From客戶端上的?

非常感謝你!

基於這樣的答案,我認為這會幫助您...

   protected void GetUser_IP()
{
    string VisitorsIPAddr = string.Empty;
    if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
    {
        VisitorsIPAddr = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
    }
    else if (HttpContext.Current.Request.UserHostAddress.Length != 0)
    {
        VisitorsIPAddr = HttpContext.Current.Request.UserHostAddress;
    }
    uip.Text = "Your IP is: " + VisitorsIPAddr;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM