Web Service 是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得 Web Service 能与其他兼容的组件进行交互操作。
Web Services 可使您的应用程序成为 Web 应用程序。
Web Services 通过 Web 进行发布、查找和使用。
在继续学习之前,您需要对下面的知识有基本的了解:
如果您希望首先学习这些项目,请在我们的首页访问这些教程。
基础的 Web Services 平台是 XML + HTTP。
HTTP 协议是最常用的因特网协议。
XML 提供了一种可用于不同的平台和编程语言之间的语言。
我们会在本教程后面章节讲解这些主题。
Web Services 拥有三种基本的元素:SOAP、WSDL 以及 UDDI。
SOAP 即 Simple Object AccessProtocol,也就是简单对象访问协议。
基本的 Web services 平台是 XML + HTTP。
如需更多有关 SOAP 的知识,请访问我们的《SOAP 教程》
WSDL 即 Web Services Description Language,也就是 Web 服务描述语言。
WSDL 是基于 XML 的用于描述 Web Services 以及如何访问 Web Services 的语言。
如需更多有关 WSDL 的知识,请访问我们的《WSDL 教程》
UDDI 即 Universal Description,Discovery and Integration,也就是通用的描述,发现以及整合。
UDDI 是一种目录服务,通过它,企业可注册并搜索 Web services。
上述就是有关 Web Services 平台元素的介绍内容。
在上一节,我们创建了一个 Web Service 的例子。
请在此测试华氏度转换摄氏度函数:华氏度转换为摄氏度
请在此测试摄氏度转换华氏度函数:摄氏度转换为华氏度
本测试使用 HTTP POST,会发送类似这样的 XML 响应:
通过使用表单和 HTTP POST,您可以把 web service 置于您的站点上,比如这样: 华氏度转换为摄氏度:
华氏度转换为摄氏度: | |
摄氏度转换为华氏度: | |
您可以使用这些代码把 web service 放置在您的站点上:
服务器上的 "tempconvert.asmx" 的地址类似如下地址:
http://www.example.com/webservices/tempconvert.asmx
任何应用程序都可拥有 Web Service 组件。
Web Services 的创建与编程语言的种类无关。
在这个例子中,我们会使用 ASP.NET 来创建一个简单的 Web Service。
此文档是一个 .asmx 文件。这是用于 XML Web Services 的 ASP.NET 文件扩展名。
注意: 要运行这个例子,我们需要一个 .NET 服务器
此文档中第一行表明这是一个 Web Service,由 VB 编写,其 class 名称是 "TempConvert"。
接下来的代码行从 .NET 框架导入了命名空间 "System.Web.Services"。
下面这一行定义 "TempConvert" 类是一个 WebSerivce 类:
接下来的步骤是基础的 VB 编程。此应用程序有两个函数。一个把华氏度转换为摄氏度,而另一个把摄氏度转换为华氏度。
与普通的应用程序唯一的不同是,此函数被定义为 "WebMethod"。
请在您希望其成为 web services 的应用程序中使用 "WebMethod" 来标记函数。
最后要做的事情是终止函数和类:
假如您把此文件另存为 .asmx 文件,并发布于支持 .NET 的服务器上,那么您就拥有了第一个可工作的 Web Service。
通过 ASP.NET,你不必亲自编写 WSDL 和 SOAP 文档。
如果您仔细研究我们的这个例子,您会发现 ASP.NET 会自动创建 WSDL 和 SOAP 请求。
本教程已经向您讲解了如何把应用程序转换为网络应用程序.
您已经学习了如何使用 XML 在应用程序间发送消息。
您也学习了如何从应用程序导出某项功能(创建一个 web service)。
下一步您应当学习 WSDL 和 SOAP。
WSDL 是基于 XML 的用来描述 Web services 以及如何访问它们的一种语言。
WSDL 可描述 web service,连同用于 web service 的消息格式和协议的细节。
如果您希望学习更多有关 WSDL 的知识,请访问我们的《WSDL 教程》。
SOAP 是一种使应用程序有能力通过 HTTP 交换信息的基于 XML 的简易协议。
或者可以更简单地说:SOAP 是一种用于访问 web service 的协议。
如果您希望学习更多有关 SOAP 的知识,请访问我们的《SOAP 教程》。