`

简单介绍webservice和soap小原理 (转)

阅读更多
从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。也就是说,可以利用编程的方法通过Web来调用这个应用程序。对Web service 更精确的解释: Web services是建立可互操作的分布式应用程序的新平台。Web service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service ,只要我们可以通过Web service标准对这些服务进行查询和访问。不管你的Web service是用什么工具,什么语言写出来的,只要你用SOAP协议通过HTTP来调用它,总体结构都一致。通常,你用你自己喜欢的语言(如VB 6或者VB.NET)来构建你的Web service,然后用SOAP Toolkit或者.NET的内建支持来把它暴露给Web客户。于是,任何语言,任何平台上的客户都可以阅读其WSDL文档,以调用这个Web service。客户根据WSDL描述文档,会生成一个SOAP请求消息。Web service都是放在Web服务器 (如IIS) 后面的,客户生成的SOAP请求会被嵌入在一个HTTP POST请求中,发送到Web服务器来。Web服务器再把这些请求转发给Web service请求处理器。请求处理器的作用在于,解析收到的SOAP请求,调用Web service,然后再生成相应的SOAP应答。Web服务器得到SOAP应答后,会再通过HTTP应答的方式把它送回到客户端。 bbs.bitsCN.com中国网管论坛基本概念 SOAP XML和XSD WSDL(Web Services Description Language) WSML(Web Services Meta Language) 什么时候使用Web Services Web service是创建可互操作的分布式应用程序的新平台。Web service 的主要目标是跨平台的可互操作性。为了达到这一目标,Web service 是完全基于XML、XSD等独立于平台、独立于软件供应商的标准的。 Web service在应用程序跨平台和跨网络进行通信的时候是非常有用的。Web service适用于应用程序集成、B2B集成、代码和数据重用,以及通过Web进行客户端和服务器的通信的场合。当然,Web service也不是万能的,你不能到处滥用Web service。在有些情况下,Web service 会降低应用程序的性能,而不会带来任何好处。例如,一台机器或一个局域网里面运行的同构应用程序就不应该用Web service 进行通信。如何调用Web Services 客户端:取得服务端的服务描述文件WSDL,解析该文件的内容,了解服务端的服务信息,以及调用方式。根据需要,生成恰当的SOAP请求消息(指定调用的方法,已经调用的参数),发往服务端。等待服务端返回的SOAP回应消息,解析得到返回值。服务端:生成服务描述文件,以供客户端获取。接收客户端发来的SOAP请求消息,解析其中的方法调用和参数格式。根据WSDL和WSML的描述,调用相应的COM对象来完成指定功能,并把返回值放入SOAP回应消息返回给用户。高层接口使用高层接口,不需要知道SOAP和XML的任何信息,就可以生成和使用一个WebService。Soap Toolkit 2.0通过提供两个COM对象――SoapClient和SoapServer,来完成这些功能。在客户端,只需要生成一个SoapClient实例,并用WSDL作为参数来调用其中的mssoapinit方法。SoapClient对象会自动解析 WSDL文件,并在内部生成所有Web Service的方法和参数信息。之后,你就可以像调用IDispatch接口里的方法一样,调用里面所有的方法。在VB或是脚本语言里,你甚至可以直接 在SoapClient对象名后面直接加上.方法(参数…)进行调用。低层接口要使用低层接口,你必须对SOAP和XML有所了解。你可以对SOAP的处理过程进行控制,特别是要做特殊处理的时候。在客户端,首先要创建一个HttpConnector对象,负责HTTP连接。设定Connector的一些头部信息,比如EndPoinURL和 SoapAction等。如果网络连接需要使用代理服务器,那也要在这里设定相关的信息。接着创建SoapSerializer对象,用于生成Soap消 息。按照WSDL里定义,把所有参数按顺序序列化,得到一个完整的SOAP请求消息。该Soap消息,作为Payload通过HttpConnector 被发送到服务端。最后,生成一个SoapReader对象,负责读取服务端返回的SOAP消息,取得其中的返回值。

转自: http://blog.csdn.net/fengyun111999/article/details/5823659
分享到:
评论

相关推荐

    VS2015 C++和C++的通过SOAP的WebService,C++和C#的WebService发布和调用

    在IT行业中,Web服务是一种广泛使用的通信协议,它允许不同应用程序之间进行数据...确保正确配置你的项目设置,理解WSDL和SOAP消息的工作原理,以及如何在C++和C#中使用GSOAP和.NET框架,是成功实现这一目标的关键。

    webService Soap实例

    首先,"firstwebservice"可能是一个基础的SOAP Web服务示例,它可能包含了一个服务端(Server)和客户端(Client)的简单实现。服务端通常会定义一个或多个操作(Operations),这些操作可以通过WSDL(Web Services ...

    HTTP接口和WebService接口

    WebService接口,也称为SOAP(Simple Object Access Protocol)服务,是一种基于XML的协议,用于不同应用程序之间交换结构化和类型化的数据。WebService接口利用WSDL(Web Services Description Language)定义服务...

    webservice之使用jaxb把xml转换Object或把对象转换成xml文件

    Web服务(WebService)是一种基于开放标准的互联网应用集成技术,它允许不同的系统之间通过网络进行通信和交互。在Java世界中,使用JAXB(Java Architecture for XML Binding)库可以方便地实现XML数据与Java对象...

    WebService的原理

    1. **SOAP(简单对象访问协议)**:SOAP是基于XML的协议,用于交换结构化和类型化的信息。在WebSocket中,SOAP主要负责封装消息,确保数据在不同平台间传输的兼容性和可读性。然而,SOAP的实现并不统一,导致跨平台...

    WebService原理[借鉴].pdf

    【WebService原理详解】 WebService是一种基于Web的分布式计算技术,它允许不同的系统和应用程序通过网络进行交互,实现数据和功能的共享。WebService的核心理念是通过开放的互联网标准进行跨平台、跨语言的互操作...

    webservice 和android 调用客户端

    以上就是关于"webservice和android调用客户端"的相关知识点,涵盖了WebService的基本原理、Android客户端调用WebService的流程、以及可能涉及的安全和优化措施。理解并掌握这些内容对于开发Android应用与服务器的...

    oracle 调用webservice

    本文将详细介绍 Oracle 调用 Webservice 的实现过程,包括 Webservice 的基本概念、 Java 编写简单的 WebService 实例、Oracle 服务器端配置、加载 JAR 包、测试调用 PHP Webservice 和 Java Webservice 等内容。...

    WebService和Ajax总结

    1. **SOAP(简单对象访问协议)**:是WebService的数据传输协议,以XML格式封装数据,确保了跨语言和跨平台的兼容性。 2. **WSDL(Web服务描述语言)**:定义了WebService的接口,描述了如何调用服务、参数类型、...

    JS调用WebService源码

    JavaScript(JS)调用WebService是Web开发中常见的一种交互方式,允许前端JavaScript代码与后端服务进行通信,实现数据的动态获取和提交。...通过这种方式,你可以深入理解JS调用WebService的基本原理和实践。

    WebService源码和笔记.zip

    WebService是一种基于互联网...这份资料包对于初学者和开发者都非常有价值,不仅可以帮助理解WebService的基本原理,还可以通过源码实践提高开发能力。建议结合视频教程逐步学习,从理论到实践,掌握WebService的精髓。

    webservice实验报告和源代码

    本实验报告和源代码主要涵盖了SOAP(Simple Object Access Protocol)和REST(Representational State Transfer)两种风格的Web服务。 1. SOAP Web服务: SOAP是一种XML格式的消息传递协议,用于在应用程序之间交换...

    QtSoap 访问webService

    - **QtSoap**:作为 Qt 库的一部分,QtSoap 提供了类和方法来构造和解析 SOAP 请求和响应。它封装了 SOAP 消息的创建、发送、接收和解析过程,使得开发者可以专注于业务逻辑而不是底层细节。 2. **QtSoap 的工作...

    WebService调用天气预报小例子

    通过学习和运行这些示例,开发者可以更好地理解WebService的工作原理,以及如何将它们应用到实际项目中。 在实际开发中,我们还需要考虑到错误处理和性能优化,例如处理网络延迟、重试机制、缓存策略等。此外,为了...

    Webservice 的设计和模式

    - Webservice开发者必须深入理解SOAP的消息传递机制和底层传输模型,以便在复杂场景下进行定制化处理。尽管自动化工具能简化简单应用的开发,但在面对特定需求时,直接操作SOAP消息和XML内容是必要的。 3. **安全...

    webservice和socket简单例子

    然而,对于简单的、只涉及一次交互的服务,WebService可能是更合适的选择,因为它提供了标准化的接口和易于理解的模型。 总之,理解并熟练掌握WebService和Socket技术对于任何IT专业人士来说都是至关重要的,这有助...

    webservice.概念架设webservice简单实例

    Webservice是一种基于网络的服务接口,它允许不同系统之间进行数据交换和交互。...通过具体的实例,我们可以更好地理解Webservice的工作原理和开发过程,这有助于在实际项目中灵活应用Webservice技术。

    SOAP资料,介绍SOAP协议

    **SOAP(Simple Object Access Protocol)协议**是一种基于XML(Extensible Markup Language)的协议,用于在Web服务中传递结构化和类型化的信息。SOAP允许应用程序通过HTTP、SMTP等传输协议进行通信,使得不同系统...

    webservice的原理及概念

    WebService的主要组成部分包括:SOAP(简单对象访问协议)、WSDL(WebService描述语言)以及UDDI(统一描述、发现与集成)。 #### WebService的概念 WebService可以被视为一种服务导向架构(SOA)中的服务提供者,...

Global site tag (gtag.js) - Google Analytics