2015-10-14 65 views
1

有什麼辦法讓httplistener將客戶端請求寫入控制檯?c#中的HttpListener請求輸出#

我想捕獲用戶從服務器請求什麼,例如,如果客戶端去http://server/request/4我想捕獲「/請求/ 4」部分。

我使用MSDN上的這個例子:

https://msdn.microsoft.com/en-us/library/system.net.httplistener(v=vs.110).aspx

+0

嗯是的 - 當你用'GetContext()'或異步等價物獲得請求時,只需打印'context.Request.Url.AbsolutePath'。你已經嘗試過了嗎?如果是的話,出了什麼問題? –

回答

1

在你所提到的例子中,你可以使用請求對象的RawUrl打印客戶端請求

// Note: The GetContext method blocks while waiting for a request. 
HttpListenerContext context = listener.GetContext(); 
HttpListenerRequest request = context.Request; 

Console.WriteLine("URL: {0}", request.Url.OriginalString); 
Console.WriteLine("Raw URL: {0}", request.RawUrl); 
Console.WriteLine("Query: {0}", request.QueryString); 
// Obtain a response object. 
HttpListenerResponse response = context.Response; 
當前的URL

注意:該代碼是MSDN幫助中示例的複製粘貼。請不要抱怨。

+0

非常好,謝謝。我想我找不到明顯的答案。無論如何,你爲我解決了它。 –