共用方式為


以 Managed 程式碼建立之 Web 服務的程式設計簡介

更新:2007 年 11 月

Web 服務讓異質系統之間能夠使用 XML 訊息格式來交換資料。雖然遠端存取資料及應用程式邏輯不是新的觀念,但是運用有彈性的方式進行遠端存取是項新的觀念。如 DCOM、IIOP 和 Java/RMI 之類的先前嘗試需要用戶端與伺服器之間緊密整合,並且使用平台及實作特定的二進位資料格式。這類通訊協定需要特殊的元件技術或物件呼叫慣例,而 Web 服務則無此需要。對於用戶端與伺服器之間的唯一假設,是收件者會了解其所接收到的訊息。換言之,用戶端與伺服器達成協定,在此情況下使用 WSDL 和 XSD 說明,然後藉由產生承認協議的訊息,透過如 HTTP 的指定傳輸進行通訊。因此,使用任何語言撰寫、採用任何元件模型,以及在任何作業系統上執行的程式,都可以存取 Web 服務。另外,使用如 XML 文字格式的彈性使得訊息交換可逐漸用有彈性的方式進行。在無法同時更新訊息交換中所有部分的環境中,應強制具備彈性。

您使用 ASP.NET 網頁架構建立 Web 服務,即可讓這些 Web 服務存取 .NET Framework 的許多功能,如驗證、快取及狀態管理。由於 ASP.NET 和 .NET Framework 都是以 Managed 程式碼建立之 Web 服務的基礎,所以開發人員可專注於建立或存取 Web 服務,而不需要撰寫基礎結構程式碼。

在 ASP.NET 應用程式模型中,要供瀏覽器使用的 Web 網頁會使用 .aspx 副檔名。為了區別 Web 服務與一般 ASP.NET 網頁,Web 服務使用 .asmx 副檔名。

使用 Web 服務時有兩種主要角色:

  • 建立 Web 服務:當您建立 XML Web Service 時,會一併建立向 XML Web Service 用戶端公開功能的應用程式。

  • 存取 Web 服務:當您存取 Web 服務時,您的用戶端應用程式會尋找、參考和使用包含在個別的 Web 服務中的功能。XML Web Service 的用戶端通常是能夠在 Web 服務之間來回傳送、接收及處理訊息的應用程式。不過,唯一的需求是用戶端必須能夠將訊息傳送至 Web 服務。這包括使用 .NET Framework 的所有應用程式。

Web 服務可以是獨立的應用程式,或是較大型 Web 應用程式的子元件。例如,假設您正在建立線上購書的 Web 應用程式。您的 Web 應用程式與 Web 服務可能的互動方式如下:

  • 建立 Web 服務:您的應用程式將其訂單處理邏輯公開為 Web 服務,接著附屬的網站可使用自己的 Web 應用程式透過線上書店來銷售書籍,而不需要讓客戶瀏覽您的網站。

  • 存取 Web 服務:您的應用程式存取另一家線上公司所提供的 Web 服務,這家線上公司專門為線上書店撰寫及提供書評。當您線上書店的瀏覽者查看特定書籍的詳細資訊時,也會在同一網頁上看到該書籍的評論。

請記得,Web 服務幾乎可從任何其他種類的應用程式存取,包括其他的 Web 服務、Web 應用程式、Windows 應用程式及主控台應用程式。唯一的需求是用戶端必須能夠將訊息傳送至 Web 服務。

請參閱

其他資源

以 Managed 程式碼建立的 Web 服務

以 Web 服務設計 Web 程式

以 Managed 程式碼建立 Web 服務

以 Managed 程式碼存取 Web 服務