共用方式為


基本 HTTP 服務

BasicHttpService 範例示範如何使用 Windows Communication Foundation (WCF) REST 程式設計模型來實作 HTTP 型 RPC 型服務 , 通常稱為 “POX” (Plain Old XML) 服務。 此範例包含兩個元件:自我裝載的 WCF HTTP 服務(Service.cs)和控制台應用程式(Program.cs),可建立服務並呼叫它。

範例詳情

WCF 服務公開了 2 個作業,EchoWithGetEchoWithPost,並會返回作為輸入傳遞的字串。

作業 EchoWithGet 會加上 WebGetAttribute批注,指出作業會處理 HTTP GET 要求。 WebGetAttribute由於 未明確指定 UriTemplate,因此作業預期輸入字串會使用名稱 s為的查詢字串參數傳入。 請注意,服務預期的 URI 格式可以使用UriTemplate屬性來自定義。

作業 EchoWithPost 會加上 WebInvokeAttribute批注,指出它不是 GET 作業(其有副作用)。 因為 WebInvokeAttribute 未明確指定 Method,所以作業會處理具有特定字串於要求主體(例如 XML 格式)的 POST HTTP 要求。 請注意,您可以使用 Method 屬性自訂要求的 HTTP 方法,以及使用 UriTemplate 屬性自訂 URI 格式。

App.config 檔案會將 WCF 服務配置為使用預設值的 WebHttpEndpoint,並將 HelpEnabled 屬性設定為 true。 因此,WCF 基礎結構會在 建立自動 HTML 型說明頁面 http://localhost:8000/Customers/help ,提供如何建構服務的 HTTP 要求,以及如何取用服務的 HTTP 回應的相關信息。

Program.cs示範 WCF 通道處理站如何用來呼叫服務和處理回應。 請注意,這隻是存取 WCF 服務的一種方式。 您也可以使用其他 .NET Framework 類別,例如 HttpWebRequestWebClient 來存取服務。

此範例包含自我裝載服務,以及同時在控制台應用程式內執行的用戶端。 當主控台應用程式執行時,用戶端會向服務提出要求,並將相關信息從回應寫入主控台視窗。

若要使用此範例

  1. 打開基本 Http 服務範例的解決方案。 啟動 Visual Studio 2012 時,您必須以系統管理員身分執行範例才能順利執行。 以滑鼠右鍵按兩下 Visual Studio 圖示,然後從作選單中選取 [ 以系統管理員身分執行 ] 來執行此動作。

  2. Ctrl+Shift+B 建置方案,然後按 Ctrl+F5 執行控制台應用程式而不進行偵錯。 控制台視窗隨即出現,並提供執行中服務的 URI,以及執行中服務的 HTML 說明頁面 URI。 您可以隨時在瀏覽器中輸入說明頁面的 URI 來檢視 HTML 說明頁面。 當範例執行時,用戶端會寫入目前活動的狀態。

  3. 按任意鍵以終止範例。