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. How To Create a Personal Balance Sheet

    Calculating your personal net worth is the best way to know exactly what your starting point is, in ...

  2. INSTALL MYSQL IN MAC

    安装好MYSQL后,在System References中找到MYSQL,启动它. 启动之后在终端中输入添加MySQL路径的命令,把MYSQL路径添加到PATH中: PATH="$PATH& ...

  3. (转)新手必看:HighCharts几个基础问答

    转自:http://bbs.hcharts.cn/article-21-1.html

  4. HBase修改压缩格式及Snappy压缩实测分享

    一.要点 有关Snappy的相关介绍可参看Hadoop压缩-SNAPPY算法,如果想安装Snappy,可以参看Hadoop HBase 配置 安装 Snappy 终极教程. 1. HBase修改Tab ...

  5. NSObject的load和initialize方法(转)

    全文转载自:http://www.cocoachina.com/ios/20150104/10826.html 在Objective-C中,NSObject是根类,而NSObject.h的头文件中前两 ...

  6. Hibernate缓存原理与策略 Hibernate缓存原理:

    Hibernate缓存原理: 对于Hibernate这类ORM而言,缓存显的尤为重要,它是持久层性能提升的关键.简单来讲Hibernate就是对JDBC进行封装,以实现内部状态的管理,OR关系的映射等 ...

  7. GitHub使用简单记录

    根据<GotGitHub>[1]所做的一些整理 1. 浏览托管项目 在GitHub的页面中可以使用键盘快捷键 (1)按下问号(?)会在弹出窗口显示当前页面可用的快捷键. (2)在项目的代码 ...

  8. 代码生成的地址:mygeneration

    一个代码生成的地址: https://gitshell.com/shiningrise/mygeneration/

  9. ora-01031:insufficient privileges解决方法 - 转

    今天晚上要远程修改一个分公司的数据库参数,于是下午先远程过去做些准备工作.数据库是oracle 11g rac,操作系统是windows 2008 server,我还是第一次见过windows下的or ...

  10. C# 开发者代码审查清单【转】

    这是为C#开发者准备的通用性代码审查清单,可以当做开发过程中的参考.这是为了确保在编码过程中,大部分通用编码指导原则都能注意到.对于新手和缺乏经验(0到3年工作经验)的开发者,参考这份清单编码会很帮助 ...