2014-03-13 68 views
0

我已經使用wcf創建了一個web服務並公開發布。現在我想知道誰試圖訪問我的服務的系統IP詳細信息。我不知道它是否可能。如果它的可能的手段告訴我那樣。獲取訪問webservice的IP詳細信息

+0

[在WCF服務中獲取請求者信息](http://stackoverflow.com/questions/4605170/getting-requester-info-in-wcf-service) – TFD

+0

首先使用google! – TFD

回答

0

所有請求信息與請求一起作爲server variables傳遞。有一大堆各種不同的信息看看at W3Schools list

在它被保存在REMOTE_ADDR變量的IP地址的情況下,您可以快速地從請求的Web服務使用訪問此:

HttpContext.Current.Request.UserHostAddress; 
+0

你能解釋一些其他的代碼 – user3085540

+0

你剛剛複製了一個很好的答案問題 – TFD

+0

@ user3085540我已經爲你更新了我的答案。 – shenku

0

你可以用它來獲取IP地址。

HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; 
1

簡單!

string ip = String.Empty; 
var props = OperationContext.Current.IncomingMessageProperties; 
var endpointProperty = props[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty; 
if (endpointProperty != null) 
{ 
     ip = endpointProperty.Address; 
} 

注意將部署後工作完美。在本地主機,它會給你網絡環回地址。所以,別擔心。此外! IPv4和IPv6將有不同的環回地址。

+0

@Serv!我忘了它是迴環。大聲笑。謝謝! –

+0

這就是編輯功能的用途。別客氣 – Marco