拼吾爱程序人生

首页 » 其他编程 » XML » 以XML为数据传输格式的Web service设计方案
cobra - 2008-8-26 0:20:00
目录

      1 设计的背景

      2  技术点说明

      3  方案设计

      4  说明



1        设计的背景

一个公司有多套系统,多套系统是基于不同的平台,并在系统中包含了web,Form,Windows service 等形式的软件 ,同时每套系统都需要和公司的客户资料打交道。

在这样的情况下,我们设计了一个Web服务来统一的管理,对于Web 服务与客户端信息交互的方式通过固定格式的XML文档来实现  



2 技术点说明

2.1 Soap和Wsdl区别

    Soap 全称为 simple object access protocal(简单对象访问协议)

是以XML为基础通过Http,负责客户端和服务器端信息传递,



    Wsdl 全称是 web services description language (web 服务描述语言)

也是以XML为基础负责描述Web服务定义的接口的信息语言,描述web 服务的接口

包含了接口定义的方法,参数,参数类型,等信息



2.2 XML 结构文档XSD简要说明和XSD 验证方式

XSD的全称为XML schema definition(XML 结构定义)它是一种描述XML结构的语言,用来描述XML文档的定义的元素,数据类型



在vs2008 中利用xsd文档验证XML文件的结构

Xml 文件

Code


XSD文件

Code


对应的后台代码

添加命名空间

Code


2.3 Web Server 的客户端权限验证

      在说明Web Server的客户端权限验证之前,我们先了解一下SoapHeader

      SoapHeader

首先 Web server 是不带状态的,客户端按照权限票据的方式来获得权限,基本的流程是,服务端提供一个生成票据的端口的接口,在这个接口中包含了证明客户端身份的帐号和密码,验证通过,返回一个权限票据

      在客户端调用服务端具体的业务接口时通过SoapHeader传输权限票据,作为客户端的身份验证。

    SoapHeader 在服务器端简要代码用例

Code


SoapHeader 在客户端的简要代码用例

Code


2.4 Linq 查询XML文档并返回查询结果的对象

Code


3 方案设计

3.1 结构图


 附件: 您所在的用户组无法下载或查看附件

Web 服务结构图



下面以添加客户信息为例 各层之间的定义

3.1.1 服务接口定义

包含权限票据接口和正常的服务功能接口



Code

Code


3.1.2 XML解析器,转化对象

将字符串转化成对应的对象




Code

Code


3.1.3 业务层

具体的业务

添加客户信息




Code

Code


(文/macroxu-1982  出处/博客园)

 您可能对 [XML] 的这些文章也感兴趣:

XML入门精解之文件格式定义
亲密接触XML(8)-我的属性规则的一个例外
XML 资源大全
亲密接触xml(4)--- XML对大小写是敏感的
DeletingspecificAttributesinaXMLFile(ASP.NETv2)
了解WEB页面工具语言XML(二)定义
了解WEB页面工具语言XML(一)产生背景
XML 中的常见问题 (一)
XML教程—编写结构完整的XML文档
亲密接触xml(2)---XML不做任何事情
1
查看完整版本: 以XML为数据传输格式的Web service设计方案
Modify by pin5i DZNT_ExpandPackage 2.1.3258 2007-2008 pin5i.com
  Total Unique Visitors: