webservice中如何獲取客戶端的IP


this.Context.Request.UserHostAddress;

很簡單,就這么一個屬性而已,貌似應該跟普通的ASP.NET應該大同小異的

 ------------------------------------------------------------------------------------

回復: 

驗證:

*.asmx的代碼如下:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace WebApplication1
{
     ///   <summary>
    
///  WebService1 的摘要說明
    
///   </summary>
    [WebService(Namespace =  " http://tempuri.org/ ")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem( false)]
     //  若要允許使用 ASP.NET AJAX 從腳本中調用此 Web 服務,請取消對下行的注釋。
    
//  [System.Web.Script.Services.ScriptService]
     public  class WebService1 : System.Web.Services.WebService
    {

        [WebMethod]
         public  string HelloWorld()
        {
             string ip = this.Context.Request.UserHostAddress;
             return ip;
        }
    }  

} 

 

 

我在一台遠程服務器上部署了webservice  ,見截圖 : 部署webservice的外網ip為  :  *.*.114.214  (截圖沒弄好,被遮蓋了一點,可以圖片右鍵,保存到本地或者新窗口看)

 

 

在IIS上部署了該項目 ,然后我在另一個網段的內網機器上,新生成的控制台項目,調用該webservice

 

 

 獲取的地址,為我目前電腦的外網出口IP (調用方的內網IP,肯定是得不到的)

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM