Web Service的出现带来了很多系统工程直接相互的调用。无疑让代码的隐藏得到了好的封装。

Web  Service 它的主要的组成要素:

SOAP:(Simple Object Access Protocol)简单对象访问协议,对于整个web 服务来说这是必须要遵循的一个协议。只有通过了这个协议才可以跨平台,或者跨防火墙直接进行通信。

WSDL:(Web Service Description  Language)Web服务描述语言。其实WSDL就是一种XML文档。比如:Web服务调用返回的结果的载体,发送到Web服务的参数的载体。都是以XML文档的形式传送

UDDI:(Universal Description Discovery and Integration):统一描述,发现和集成协议。它的存在就是为了记录Web Service的信息,帮你查询到Web service,一般情况下是要讲Web Service注册到UDDI中的。除非你想让别人知道你的Web Service。

在客户端调用Web 服务整个过程都是需要进行序列化和反序列化的。

下面说一下:Web服务的调用方式:

1. 同步调用

对于同步调用的时候,大家都是知道代码的执行顺序是由上到下执行的。如果这段代码有Web服务的方法,那么它只能够先执行Web服务的方法执行完之后才可以继续往下执行,如果由于一些因素影响了代码的执行。比如:网络的问题,对于这个问题是必须要考虑的。用户在那里等了半天都不呈现,那样是很不好的。没有一家公司是愿意这样做的。所以就出现了另一种调用的方式。

2. 异步调用

对于异步调用有那么一点点的复杂,没关系,一起来看看。

对于Web服务的代码还是不用更改的。只是客户端的调用需要改变代码

A. 需要将这个编码完成的Web服务部署到IIS服务器上,新建网站选择存放网站的目录,完成后先在浏览器中调用调试。防止出现调用的错误。如果一切OK的话,

B. 在客户端的网站中添加Web引用,这是很重要的。然后选择本地

中的选择本地计算机中的Web服务,顺便提一下第一个选择,如果客户端的解决方案中存在Web服务的项目就可以直接选择第一个了。然后看到右侧的Web引用名这是个人定义的。但是还是推荐规范的命名方式。

确认后可以再项目中看到一个SearchBookServices文件夹,当中存放的就是VS自动生成的文件,简单的说明一下:

disco:发现文档,包含所有的Web服务的可用的资源的引用

wsdl:当前web服务wsdl文件

discomap:发现文档,包含对.disco和.wsdl文件的引用

下面就是异步调用的方式了:

首先肯定是要引用命名空间,就是刚刚自定义的命名空间了。

最下面的就是笔者定义的命名空间。

实例化一个全局的私有服务类,

这里我简单的写了一个异步调用的方法。这就是Web Service的调用,当然这里只是简单的说说。帮助大家回忆一下。

对于Web 服务的优点:

A. 可以跨平台通信

B. 跨越防火墙通信

C. B2B(Business To Business)的集成

D. 软件和数据的重用

最后请大家不用忘了Web服务的调用方式分为同步和异步。老习惯了-今天来个怀旧的图片,希望大家喜欢

Web Service学习小结(概念性回忆)-希望你们会喜欢的更多相关文章

  1. Web Service学习笔记:动态调用WebService

    原文:Web Service学习笔记:动态调用WebService 多数时候我们通过 "添加 Web 引用..." 创建客户端代理类的方式调用WebService,但在某些情况下我 ...

  2. Web Service学习之二:Web Service(for JAVA)的几种框架

    在讲Web Service开发服务时,需要介绍一个目前开发Web Service的几个框架,分别为Axis,axis2,Xfire,CXF以及JWS(也就是前面所述的JAX-WS,这是Java6发布所 ...

  3. Web Service学习之一:Web Service原理

    一.定义 Web Service 不是框架也不是技术 而是解决远程调用.跨平台调用.跨语言调用问题的一种规范. 二.应用1.同一个公司新.旧系统的整合:比如CRM系统与OA.客服系统相互调用2.不同公 ...

  4. Web Service学习笔记(webservice、soap、wsdl、jws详细分析)

    Web Service概述 Web Service的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计.Web Service服务通常被定义为一组模块化的API ...

  5. Web Service学习文旦下载

    Web Service的学习暂且告一段落,因为毕竟只是对它作简要了解,至于其原理什么并不打算涉及. 在这里我提供下我之前文档的整理版本: http://kuai.xunlei.com/d/YlzvAG ...

  6. Web Service学习笔记

    Web Service概述 Web Service的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计.Web Service服务通常被定义为一组模块化的API ...

  7. Web Service学习笔记(webservice、soap、wsdl、jws详细分析) (转)

    Web Service概述 Web Service的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计.Web Service服务通常被定义为一组模块化的API ...

  8. Java Restful Web Service 学习指南

    Restful是一种架构style,目前常说的有restful web service, resultful http.现在热搜榜的微服务,大多数会采用Restful方式. JAX-RS 作为一个Re ...

  9. web service 学习

    是什么? 是一种远程调用技术,这种技术提供一些接口,这些接口实现让客户端和服务端进行通信和数据交换,并且让通信和交换与平台和开发语言无关.也可以说是提供了许多函数.客户端调用服务端的函数. 远程调用: ...

随机推荐

  1. iOS杂谈-图片拉伸的实现

    如上图是一个按钮的背景图,在Android上,很多图片资源都是类似这样子的,但是由于按钮的高度及宽度与图片的世纪尺寸不同,所以需要采用9patch来实现拉伸处理, 可参考:http://www.cnb ...

  2. [原]cocos2d-lua 常用法汇总

    1.CCEditBox local back = CCScale9Sprite:create("res/ui/images/im_02.png", CCRect(20, 20, 1 ...

  3. LoadRunner AJAX TruClient协议Tips and Tricks

    LoadRunner AJAX TruClient协议Tips and Trickshttp://automationqa.com/forum.php?mod=viewthread&tid=2 ...

  4. 基于soapUI构建WebService测试框架

    基于soapUI构建WebService测试框架 http://www.docin.com/p-775523285.html

  5. Selenium Grid 学习笔记

    Selenium Grid 学习笔记http://www.docin.com/p-765680298.html

  6. C# FTP FtpWebRequest UsePassive 属性

    属性值 类型:System::Boolean如果客户端应用程序的数据传输过程侦听数据端口上的连接,则为 false:如果客户端应在数据端口上启动连接,则为 true. 默认值为 true. UsePa ...

  7. 客户端配置文件tnsname.ora

    ARP2 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 182.168.1.173)(PORT = 1521) ...

  8. ios ZBar扫二维码奇奇怪怪的错误

    Undefined symbols for architecture armv7: "_CVPixelBufferGetHeight", referenced from: -[ZB ...

  9. 安卓开发笔记——自定义广告轮播Banner(实现无限循环)

    关于广告轮播,大家肯定不会陌生,它在现手机市场各大APP出现的频率极高,它的优点在于"不占屏",可以仅用小小的固定空位来展示几个甚至几十个广告条,而且动态效果很好,具有很好的用户& ...

  10. 读书笔记_Effective_C++_条款四十二:了解typename的双重意义

    顾名思义,typename有双重含意.只要你用过template,那么第一重含意一定知道,那就是声明模板的时候,我们既可以这样写: template <class T> 也可以这样写 te ...