複製鏈接
請複製以下鏈接發送給好友

web services

(基於網絡的模塊化組件)

鎖定
Web Service是基於網絡的、分佈式的模塊化組件,它執行特定的任務,遵守具體的技術規範,這些規範使得Web Service能與其他兼容的組件進行交互操作。Internet Inter-Orb Protocol(IIOP)都已經發布了很長時間了,但是這些模型都依賴於特殊對象模型協議,而 Web Services 利用 SOAP 和 XML對這些模型在通訊方面作了進一步的擴展以消除特殊對象模型的障礙。Web Services 主要利用 HTTP 和 SOAP 協議使業務數據在 Web 上傳輸,SOAP通過 HTTP 調用業務對象執行遠程功能調用,Web 用户能夠使用 SOAP 和 HTTP通過 Web 調用的方法來調用遠程對象的。
外文名
web services
功    能
使您的應用程序成為Web應用程序
HTTP協議
因特網協議
平    台
XML + HTTP

web services功能

Web Services 可使您的應用程序成為 Web 應用程序。
Web Services 通過 Web 進行發佈、查找和使用是應用程序組件使用開放協議進行通信, 是獨立的(self-contained)並可自我描述, 可通過使用UDDI來發現,可被其他應用程序使用。XML 是 Web Services 的基礎

web services工作原理

Web services 平台是簡單的可共同操作的消息收發框架。它仍然缺少許多諸如安全和路由等重要的特性。但是,一旦 SOAP 變得更加高級,這些事項就會得到解決。有望使應用程序更加容易通信
Web services 工作原理
基礎的 Web Services 平台是 XML + HTTP。
HTTP 協議是最常用的因特網協議
XML 提供了一種可用於不同的平台和編程語言之間的語言。
Web services 平台的元素:
SOAP (簡易對象訪問協議)
UDDI (通用描述、發現及整合)
WSDL (Web services 描述語言)
web services協議棧 web services協議棧
2.一個Web Service客户端,顧名思義是和一個Web Service服務器進行交互。
下面是一個Web Service客户端調用Web Service的基本過程。
構造SOAP請求消息(將本地數據對象轉換為SOAP消息)
發送SOAP消息到Web Service服務器的指定端口
接收SOAP響應消息
將SOAP響應消息轉換為本地數據對象
3.webService與SOA的關係
webService是SOA的一個具體實現
SOA是思想
就像面向對象J2ee的關係
4.SOAP基於HTTP的,在http協議下傳輸xml文件
5.UDDI:發現和整合服務,很少用
6.開發方法:只要獲得wsdl方式即可
7.webService效率較慢
傳輸的是文本
EJB和CORBA傳輸的是二進制,效率較好
8.攔截soap請求和響應信息

web services主要架構

SOAP協議基礎 SOAP協議基礎
客户根據 WSDL 描述文檔,會生成一個 SOAP 請求消息。Web Services 都是放在Web服務器(如IIS)後面,客户生成的SOAP請求會被嵌入在一個HTTP POST請求中,發送到 Web 服務器來。Web 服務器再把這些請求轉發給 Web Services 請求處理器。請求處理器的作用在於,解析收到的 SOAP 請求,調用 Web Services,
然後再生成相應的 SOAP 應答。Web 服務器得到 SOAP 應答後,會再通過 HTTP應答的方式把信息送回到客户端。
Web Services 體系
各類程序語言通過標準互聯網統一服務 各類程序語言通過標準互聯網統一服務
Web Services 體系主要包括以下幾個方面:① Web Services 組件。包括 3 種組件:
服務提供者:提供服務,進行註冊以使服務可用;
服務代理:服務交換所,服務提供者和服務請求者之間的媒體;
服務請求者:向服務代理請求服務,調用這些服務創建應用程序。
② Web Services 操作。包括 3 種操作:
發佈/不發佈(Publish/Unpublish):提供者向代理發佈(註冊)服務或不發佈(移去)這些服務的註冊;
發現(Find):由服務請求者向服務代理執行 find 操作,服務請求者描述要找的
服務,服務代理分發匹配的結果;
綁定(Bind):在服務請求者和服務提供者之間綁定,這兩部分協商以使請求者
可以訪問和調用提供者的服務。
三大核心技術標準 三大核心技術標準
③ UDDI——通用發現、描述和整合。這是一個Web Services的信息註冊規範,基於UDDI的Web Services註冊可以被發現 UDDI 的發現方法是:在 Web 上有一種分佈的註冊服務,商務和服務以一種通用的 XML 格式描述,XML 中的結構化數據易於發現、分析和操作。
④ WSDL——Web 服務描述語言。
Web 服務描述言語(WSDL)是一種 XML 語法,為服務提供者提供了描述構建在不同協議或編碼方式之上的 Web Services 請求基本格式的方法。WSDL 用來描述一個 Web Services 能做什麼,它的位置在哪裏,如何調用它等。在假定以SOAP/HTTP/MIME 作為遠程對象調用機制的情況下,WSDL 會發揮最大作用。UDDI 註冊描述了 Web Services 絕大多數方面,包括服務的綁定細節。WSDL 可以看作是 UDDI 服務描述的子集。
WSDL 將服務定義為一個網絡端點的集合,或者説端口的集合。在 WSDL 裏面,端點及消息的抽象定義與它們具體的網絡實現和數據格式綁定是分離的。這樣就可以重用這些抽象定義:消息,需要交換的數據的抽象描述;端口類型,操作的抽象集合。針對一個特定端口類型的具體協議和數據格式規範構成一個可重用的綁定。一個端口定義成網絡地址和可重用的綁定的連接,端口的集合定義為服務。因此一個 WSDL 文檔在定義網絡服務的時候使用如下的元素:
類型——使用某種的類型系統(如 XSD)定義數據類型的容器;
消息——通訊數據抽象的有類型的定義;
操作——服務支持動作的抽象描述;
端口類型——一個操作的抽象集合,該操作由一個或多個端點支持;
綁定——針對一個特定端口類型的具體協議規範和數據格式規範;
端口——一個單一的端點,定義成一個綁定和一個網絡地址的鏈接;
服務——相關端點的集合。 [1] 
所以不難看出,WSDL 給客户提供了一個模板,方便客户描述和綁定服務。

web services主要區別

web services是指用於架構Web service的整體技術框架,而Web Service則是使用Web Services技術而創建的應用實例,在很多時候,Web Services的含義也是具體的應用實例,只不過此時泛指。

web services應用實例

Imports SystemImports System.Web.ServicesPublic Class TempConvert :Inherits WebService
PublicFunction CelsiusToFahrenheit(ByVal Celsius As Int16) As Int16 Dim fahrenheit As Int16 fahrenheit = ((((Celsius) * 9) / 5) + 32) Return fahrenheitEndFunctionEnd Class
要運行這個例子,我們需要一個 .NET 服務器
此文檔中第一行表明這是一個 Web Service,由 VB 編寫,其 class 名稱是 "TempConvert"。
接下來的代碼行從 .NET 框架導入了命名空間 "System.Web.Services"。
Imports SystemImports System.Web.Services下面這一行定義 "TempConvert" 類是一個 WebSerivce 類:
Public Class TempConvert :Inherits WebService接下來的步驟是基礎的 VB 編程。此應用程序有兩個函數。一個把華氏度轉換為攝氏度,而另一個把攝氏度轉換為華氏度。
與普通的應用程序唯一的不同是,此函數被定義為 "WebMethod"。
請在您希望其成為 web services 的應用程序中使用 "WebMethod" 來標記函數。
Public Function FahrenheitToCelsius(ByVal Fahrenheit As Int16) As Int16 Dim celsius As Int16 celsius = ((((Fahrenheit) - 32) / 9) * 5) Return celsiusEnd FunctionPublic 最後要做的事情是終止函數和類:
End Function
參考資料