Web Services Client for C++ 可讓您管理用戶端與 Web 服務伺服器之間的傳訊。
Web 服務是基於稱為 WSDL 的檔案(其為 XML 檔案),其中包含 與網際網路特定位置的可用服務相關的所有資訊。WSDL 的最簡單層次會詳細說明要求與回應訊息配對, 並且包含與 Web 服務相關的所有資訊。Web Services Client for C++ 套件提供一個 Java 程式,稱為 WSDL2Ws 工具。 這個工具可讓您將 WSDL 變成一套 C++ Stub 和資料物件, 讓您呼叫並傳送資訊給它們,以及讓您從伺服器要求資訊,等待對應的回覆, 之後再將回應資料物件傳送回用戶端。Stub 會使應用程式撰寫者無法看見網際網路通訊。您只需要知道服務名稱、 其中包含的方法,以及任何傳送的資料物件結構。
有兩種不同的方法可以使用 Web Services Client for C++:
這兩種方法都可以正常使用,但不建議您使用第二個方法, 因為用戶端應用程式撰寫者必須知道 API 以及用戶端與伺服器之間的通訊協定。另外,如果需要變更, 撰寫者必須以手動方式變更程式碼,這樣更容易發生錯誤。建議的實作方式是使用 WSDL 來說明訊息以及任何相關聯的 XSD,然後使用 WSDL2Ws 工具來產生 Stub。
下面這三個圖解說明利用這個建議的 Web Services Client for C++ 實作方式來將 WSDL 轉換成 Web 服務時所需要的動作。
圖 1 說明第一個步驟,也就是將 WSDL 轉換成一組可供用戶端應用程式呼叫的 C++ 用戶端 Stub。
如同圖 2 中所顯示的狀況, 用戶端應用程式會對 Stub 中的服務呼叫一個方法。這個方法會呼叫 AxisClient 程式庫中的許多基礎方法, 來產生與伺服器通訊的 SOAP 訊息。