利用现成的服务编写客户端程序

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

采用VS集成环境

利用现成的服务编写客户端程序

专题报告者:XXX (学号:2010101032) 年级专业:10计算机

报告日期: 2013年6月18日

采用VS集成环境利用现成的服务编写客户端程序

摘要:Web Service是一项很实用的技术,能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据Web Service规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。Web Service是自描述、自包含的可用网络模块,可以执行具体的业务功能。这次专题实验主要是采用Visual Studio集成环境,利用现成的服务,编写一个客户端程序,实现服务的调用过程。

关键词:Web Service、Visual Studio、客户端程序

目录

一、Web Service 概述 (4)

1、Web Service定义 (4)

1)简介 (4)

2)核心定义 (4)

2、使用Web Service的方式 (4)

1)远程过程调用 (4)

2)服务导向架构 (5)

3)表述性状态转移 (5)

3、WSDL概述 (5)

1)WSDL简介 (5)

2)WSDL元素 (5)

二、Visual Studio集成开发环境 (6)

1、Visual Studio简介 (6)

2、Visual C#简介 (6)

三、编写客户端程序 (6)

1、客户端程序介绍 (6)

2、天气预报Web Service (7)

1)WSDL地址 (7)

2)WSDL解析 (7)

3、程序编写流程 (8)

1)新建C#窗体应用程序 (8)

2)添加服务引用 (9)

3)设计客户端界面 (9)

4)编写调用代码 (10)

5)编译运行 (11)

6)调试 (11)

四、结语 (13)

五、参考文献 (13)

六、自评 (13)

一、Web Service 概述

1、Web Service定义

1)简介

Web服务是一种服务导向架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作。

根据W3C的定义,Web服务(Web service)应当是一个软件系统,用以支持网络间不同机器的互动操作。网络服务通常是许多应用程序接口(API)所组成的,

它们透过网络,例如国际互联网(Internet)的远程服务器端,执行客户所提交服

务的请求。

尽管W3C的定义涵盖诸多相异且无法介分的系统,不过通常我们指有关于主从式架构(Client-server)之间根据SOAP协议进行传递XML格式消息。无论定义

还是实现,WEB服务过程中会由服务器提供一个机器可读的描述(通常基于WSDL)

以辨识服务器所提供的WEB服务。另外,虽然WSDL不是SOAP服务端点的必要

条件,但目前基于Java的主流WEB服务开发框架往往需要WSDL实现客户端的源

代码生成。一些工业标准化组织,比如WS-I,就在WEB服务定义中强制包含SOAP

和WSDL。

2)核心定义

考虑到并没某个独立文档包含一切相关内容,可采用模块化的方式给出对WEB服务的描述,但不能给出一个“绝对全面和准确”的定义。受外部环境和实

现技术影响,各方给出的核心定义可能稍有出入,但通常包括:

SOAP:一个基于XML的可扩展消息信封格式,需同时绑定一个传输用协议。

这个协议通常是HTTP或HTTPS,但也可能是SMTP或XMPP。

WSDL:一个XML格式文档,用以描述服务端口访问方式和使用协议的细节。

通常用来辅助生成服务器和客户端代码及配置信息。

UDDI:一个用来发布和搜索WEB服务的协议,应用程序可借由此协议在设计

或运行时找到目标WEB服务。

2、使用Web Service的方式

1)远程过程调用

WEB服务提供一个分布式函数或方法接口供用户调用,这是一种比较传统的方式。通常,在WSDL中对RPC接口进行定义(类似于早期的XML-RPC)。

尽管最初的WEB服务广泛采用RPC方式部署,但针对其过于紧密之耦合

性的批评声也随之不断。这是因为RPC式WEB服务实质上是利用一个简单的

映射,以把用户请求直接转化成为一个特定语言编写的函数或方法。如今,多

数服务提供商认定此种方式在未来将难有作为,在他们的推动下,WS-I基本

协议集(WS-I Basic Profile)已不再支持远程过程调用。

2)服务导向架构

现在,业界比较关注的是遵从服务导向架构(Service-oriented architecture,SOA)概念来构筑WEB服务。在服务导向架构中,通讯由消息驱动,而不再

是某个动作(方法调用)。这种WEB服务也被称作面向消息的服务。

SOA式WEB服务得到了大部分主要软件供应商以及业界专家的支持和肯定。作为与RPC方式的最大差别,SOA方式更加关注如何去连接服务而不是

去特定某个实现的细节。WSDL定义了联络服务的必要内容。

3)表述性状态转移

表述性状态转移式(Representational state transfer,REST)WEB服务类似于HTTP或其他类似协议,它们把接口限定在一组广为人知的标准动作中(比

如HTTP的GET、PUT、DELETE)以供调用。此类WEB服务关注与那些稳定的

资源的互动,而不是消息或动作。

此种服务可以通过WSDL来描述SOAP消息内容,通过HTTP限定动作接口;或者完全在SOAP中对动作进行抽象。

3、WSDL概述

1)WSDL简介

WSDL(Web服务描述语言,Web Services Description Language)是为描述Web服务发布的XML格式。WSDL描述Web服务的公共接口。这是一个基于

XML的关于如何与Web服务通讯和使用的服务描述;也就是描述与目录中列

出的Web服务进行交互时需要绑定的协议和信息格式。通常采用抽象语言描

述该服务支持的操作和信息,使用的时候再将实际的网络协议和信息格式绑

定给该服务。

2)WSDL元素

WSDL元素基于XML语法描述了与服务进行交互的基本元素:

TYPE:数据类型定义的容器,它使用某种类型系统(如XSD)。

Message:通信数据的抽象类型化定义,它由一个或者多个part组成。

Part:消息参数

Operation:对服务所支持的操作进行抽象描述,WSDL定义了四种操作:

1.单向(one-way):端点接受信息;

相关文档
最新文档