




已阅读5页,还剩60页未读, 继续免费阅读
(计算机应用技术专业论文)基于web服务电子支付系统的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着i n t e r n e t 技术的迅猛发展和电子商务的日渐频繁,各种各样的新兴技 术都不断应用于电子商务领域。由于w e b 服务是“资源共享、交互通信、协作研 究、协同求解”的,受到广泛的重视和采用。微软更是通过“一切都是服务”来 概括w e b 服务将给当前i t 业带来的冲击。本文重点研究如何将w e b 服务技术应 用于电子支付系统。 首先分析了采用w e b 服务技术的原因,从) ( m l ,s o a p ,w s d l ,u d d i 四个方面对 w e b 服务关键技术进行了阐述,并对电子支付系统的实现和设计等问题做了探 讨。 基于w e b 服务的电子支付系统的关键问题是如何实现安全性。本文分析了安 全的实现方法和实现技术,具体讨论了通过h t t p 协议和s o a p 协议实现的方法, 并重点介绍了如何通过s o a p 协议来实现。在q o s 方面,分析了产生q o s 问题的 原因,并针对这些原因给出了解决方案。最后介绍了目前尚处于研究阶段的下一 代w e b 服务。 关键词:w e b 服务电予支付x m ls o a p a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n t e m e ta n dt h ep o p u l a r i z a t i o no fe - b u s i n e s s ,k i n d so f n e wt e c h n o l o g yw a sa p p l i e di nt h i sa r e a b e c a u s ew e bs e r v i c ec a ns h a r er e s o u r c e s , c o m m u n i c a t i o ne a c ho t h e r , c o o p e r a t eo nr e s e a r c h r e s o l es o m ep r o b l e mt o g e t h e r m o r ea n dm o r ep e o p l ea n do r g a n i z a t i o nt a k ei n t oa c c o u n ti ta n da p p l yi t e v e r y t h i n g i ss e r v i c e m i c r o s o f tu s e dt h i ss e n t e n c et os u m m a r i z et h ef u t u r ei m p a c to fw e b s e r v i c et oi ti n d u s t r y d e e ps t u d yo f h o wt or e a l i z ee l e c t r o n i cp a y m e n ts y s t e mb a s e d o nw e bs e r v i c ei nt h i sa r t i c l e a tf i r s ti ta n a l y z e st h er e a s o no fu s i n gw e bs e r v i c ea n dd i s c u s s e st h ef o u rk e y t e c h n o l o g i e st h a ti sx m l ,s o a p , w s d l ,u d d i t h e n i td i s c u s s e sm a n ys i d e sa r o u n d t h er e a l i z a t i o na n dd e s i g no fe l e c t r o n i cp a y m e n t t h ek e yp r o b l e mc o n c e r n i n gt h ee l e c t r o n i cp a y m e n ts y s t e mb a s e do nw e bs e r v i c ei s b o wt oi n s u r et h es e c u r i t y i nt h i sa r t i c l ei ta n a l y z e sm e t h o d o l o g i e sa n dt e c h n o l o g i e s o fs e c u r i t y t h e ni td i s c u s s e st w ow a y st or e a l i z ei tb vh t t pp r o t o c o la n ds o a p p r o t o c o la n di n t r o d u c e sh o wt oa c h i e v ei tb vs o a pp r o t o c o lw i t hd e t a i l s 0 nt h es i d e o f0 0 s ,i ta n a l y z e st h er e a s o na n dt h e nt r i e st om a k es o m es o l u t i o n sa c c o r d i n gt o 也e p r o b l e m t h e1 a s ti ti n t r o d u c e st h en e ) c tg e n e r a t i o no fw e bs e r v i c et h a ti ss t i l lo nt h e p e r i o do f r e s e a r c h i n ga tp r e s e n t w r i t t e nb y :a il i j u n ( c o m p u t e ra p p l i c a t i o n ) d i r e c t e db y :p r o f z h a nc h u a n j i e k e y w o r d s :w e bs e r v i c e ,e l e c t r o n i cp a y m e n t ,x m l ,s o a p 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得南昌大学或其他教育机 构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献 均己在论文中作了明确的说明并表示谢意。 学位论文作者签名:殳最& 签字日期: ) 巧年6 月7 目 学位论文版权使用授权书 本学位论文作者完全了解南昌史学有关保留、使用学位论文的规定, 有权保留并向陶家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和 借阅。本人授权南昌土学可以将学位论文的全部或部分内容编入有关数据库进 行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名: 支两摹 导师签名: 上 专芬、 签字日期: d i 譬年6 月 5 日 签字日期:p 心年占月f 日 学位论文作者毕业后去向:坼辽一呈0 兴 工作单位:! 诵1 1 违i i 生口兴伤地国 通讯地址:j 掬1 2 砖l 号! ;戈匀心司 电话: 易州旺粥f 邮编: f ? 。c 第一章绪论 1 1 电子商务简介 国际商会于1 9 9 7 年1 1 月,在巴黎举行了世界电子商务会议( t h ew o r l d b u s i n e s s a g e n d af o re l e c t r o n i cc o m m e r c e ) 。会上专家和代表对电子商务的概念进 行了最有权威的阐述:电子商务( e l e c t r o n i cc o m m e r c e ) ,是指实现整个贸易过 程中各阶段的贸易活动的电子化。从涵盖范围方面可以定义为:交易各方以电子 交易方式而不是通过当面交换或直接面谈方式进行的任何形式的商业交易;从技 术方面可以定义为:电子商务是一种多技术的集合体,包括交换数据( 如电子数 据交换、电子邮件) 、获得数据( 共享数据库、电子公告牌) 以及自动捕获数据 ( 条形码) 等。电子商务涵盖的业务包括:信息交换、售前售后服务( 提供产品 和服务的细节、产品使用技术指南、回答顾客意见) 、销售、电子支付( 使用电 子资金转账、信用卡、电子支票、电子现金) 、运输( 包括商品的发送管理和运 输跟踪,以及可以电子化传送的产品的实际发送) 、组建虚拟企业( 组建一个物 理上不存在的企业,集中一批独立的中小公司的权限,提供比任何单独公司多得 多的产品和服务) 、公司和贸易伙伴可以共同拥有和运营共享的商业方法等。 现在人们所探讨的电子商务主要是以e d i ( 电予数据交换) 和i n t e r n e t 来完成的。作为一种新型的商务模式,电子商务具有普遍性、方便性、整体性、 安全性、协调性等特征。 e d i ( e l e c t r o n i cd a t ai n t e r c h a n g e ) 6 0 年代末期产生于美国,是指将业务文 件按一个公认的标准从一台计算机传输到另一台计算机上去的电子传输方法。由 于e d l 大大减少了纸张票据,因此,人们也形象地称之为“无纸贸易”或“无 纸交易”。 9 0 年代以来,因为计算机的广泛应用、网络的普及和成熟、信用卡的普及 应用以及电子安全交易协议的制定和政府的支持与推动,电子商务的发展进入了 国际互联网时代。与基于e d i 的电子商务相比,基于互联网的电子商务具有费 用低廉、覆盖面广、功能更全面、使用更灵活等明显的优势。 从贸易活动的角度分析,电子商务可以在多个环节实现,由此也可以将电子 商务分为两个层次,较低层次的电子商务如电子商情、电子贸易、电子合同等: 最完整的也是最高级的电子商务是利用i n t e n e t 网络进行全部的贸易活动,即 在网上将信息流、商流、资金流和部分的物流完整地实现,即你可以从寻找客户 开始,一直到洽谈、订货、在线付( 收) 款、开据电子发票以至到电子报关、电 子纳税等通过i n t e m e t 一气呵成。 1 2 国内外电子支付系统研究状况 各厂商如i b m 、惠普、微软、s u n 等纷纷推出自己的电子商务产品和各自 的解决方案。随着电子商务的发展,各种法规也随之健全。1 9 9 6 年联合国国际 贸易法委员会已经制定了一个电子商务示范法,在这之后。一些工业发达国 家如美国先后制定了全球电子商务框架、电子签名法,欧洲议会也批准了 电子商务指令和电子签名指令。不少发达国家和地区,如新加坡、香港, 也制定自己的电子商务法。中国在今年4 月1 臼开始实施电子签名法。 匿外:电予商务支付系统多数集中在在线电子支付系统上。这类系统包括:( 1 、 不使用任何强的保护方法的系统, 而仅需要提前对用户帐号注册,它们被认为 是不充分安全的。( 2 ) 通过特殊的安全协议处理购方认证和支付信息的系统,实 现信用卡模式的系统。( 3 ) 实现匿名电子现金模式的系统。在i n t e m e t 之外,还 有一些有意义的基于智能卡s m a r t c a r d 的离线支付系统已被开发。同样它们也可 用于在线方式。这类系统包括从传统的电子钱包到提供强的多方安全和匿名性的 系统,例如e s p r i t 开发的c a f e 系统,但是多数电予支付系统是封闭的,它们 使用专用技术或只支持特定集合的协议或机制。 国外较著名的支付系统有f i r s t v i r t u a i ( r v ) ,是i n t e m e t 上使用最早的信用卡 支付系统之一。f v 采用将有关客户信用卡和商家开户行细目的所有信息不在 i n t e m e t 上传递,而通过电话、传真或邮递等方式传递给f v 支付系统的方法来 解决安全问题,这是f v 系统的最大特点。 适合大面额的交易的有c y b e r c a s h 公司提供的简单加密信用卡解决方案。他 给用户和商家免费提供客户端软件,以使他们实现使用专用加密技术的安全 i n t e m e t 支付服务。用户可提交付款给零售商,零售商再传送给连接到一定数量 美国银行专用网络的c y b e r c a s h 服务器。零售商不能够看到加密支付中的任何信 用卡明细帐。c y b e r c a s h 加密技术使用5 6 位和7 6 8 位一1 0 2 4 位的r s a 公开密钥 对产生数字签名。后台的第三方和银行以及商家之间的交换信息需要一系列的加 2 密、授权、认证,所以交易本身需要的成本比较高。 目前e b a y 的子公司,拥有4 5 0 0 万用户的p a y p a l 是一个已经在中小企业取 得了空前的成功的支付系统。它正在逐渐成为大型商家所熟知的支付品牌。2 0 0 3 年1 0 月还与c y b e r s o u r c e 达成合作向商家提供免集成的支付工具,c y b e r s o u r c e 成了p a y p a l 的一个支付网关。对于希望直接与p a y p a l 相连的商家,目前也提供 了基于w e b 服务技术的简易工具,通过公开其技术标准,开发人员更加容易将 p a y p a l 集成至现有的支付系统当中,甚至其开发工具当中。p a y p a l 的商户服务团 队资深产品经理t i e n 称:采用v i s u a ls t u d i o n e t 平台,只要从p a y p a l 下载相应 的w s d l 文件,所有的变量将出现在你的开发工具中! 同时,商家的业务流程 也可以得到提升,每日的工作只需要下载相应的交易数据,便可安排其他的包装、 交货等流程。 国内:随着全球信息化和经济全球化的发展,我国加入w t 0 ,我国电子商务正逐 步走向全面的应用,并渗透到社会经济各个层面。经过几年的发展,社会已经重 新认识到电子商务的内涵与价值。从国际上来看,发展电子商务是我们融入世界 经济大潮,参与经济全球化竞争的需要。从国内来看,发展电子商务是提高国民 经济的整体素质,加快产业结构调整的需要,也是我们推进国民经济信息化非常 重要的组成部分。 中国金融电子化与信息化虽然起步较晚,但起点较高,发展和应用均很快, 并且存在着实现跨越式发展的机会。虽然包括网络支付方式在内的电子支付方式 的应用还不尽人意,与发达国家存在巨大差距,但毕竟在快速发展中。政府部门、 企业与普通消费者观念的改变与积极行动银行积极应用现代信息网络技术提供 更好、更可靠的服务,特别是自2 0 世纪9 0 年代以来的一系列电子化与信息化工 程的实施,比如“三金工程”、“金网工程”,以及中国国家现代化支付系统的实 施,极大地促进了中国整个金融电子化与信息化进程,这为推进网络支付方式的 应用提供了很好的基础。 1 9 9 8 年底招商银行在国内首先推出网上银行业务,至2 0 0 0 年底招商银行网 上银行的个体用户达1 7 万户,交易额在3 0 0 0 4 0 0 0 亿元之间,企业用户约1 8 0 0 0 余户,交易额达5 0 0 0 亿元。中国银行、中国建设银行紧随其后,中国工商银行、 中信实业银行、光大银行、华夏银行、深圳发展银行等也相继推出网上银行业务。 至此,中国网络银行已初步具备了在线支付的能力,为电子商务的发展创造了条 件。 国内电子商务支付方式逐步趋向多元化,网上支付服务有三种不同的处理方 式: 一是银行自己建立一个网上购物平台,汇集各种网上销售商品的信息,让商 户与客户在这个平台上进行交易。这种处理方式有利于提高数据交流的安全性且 银行可以向商户收取一定的手续费。 二是提供多个网上购物站点的连接,客户在网上商城选择了需要购买的物品 后,再连接到相应的网络银行完成支付交易。 三是利用公共支付网关,所有商户均与公共支付网关连接。消费者网上消费 通过公共支付网关选择银行卡进行支付。公共支付网关再通过金卡工程或直接与 银行连接进行清算,从而完成整个网上支付过程。 公共支付网关网上支付形式,对网民而言,拥有了更为便捷的支付通道,可 以轻松安全地进行在线交易。并且,因为各参与交易的实体( 包括:网络商家、 第三方在线支付平台、银行机构) 拥有清晰的服务职能,网民可以拥有足够的支 4 , - j ) l 砬务和安全保证;对于银行来说,由于大部分银行还无法提供完全全国联网的 网络支付服务,在实现传统支付系统到网络支付系统的改造过程中,银行间缺乏 合作,各自为政,未形成大型的支付网关,网络支付结算体系覆盖面相对较小: 网络支付业务的标准性差,数据传输和处理标准不统一等等。采用第三方在线支 付可以减少建设网上支付平台的成本,且不需要与众多的商户建立多头连接,还 可以实现客户资源共享:对市场而言,第三方在线支付服务平台促进了电子商务 在线支付的健康成长,交易量的聚集也可以降低各自的交易成本,交易储备金制 度更可以降低市场交易风险;对电子商务网站而言,省去了网站与各类银行发卡 机构谈判连接的麻烦,统一的接口标准更可以降低技术和维护成本,将在线支付 功能完全交给专业分工的第三方在线支付服务平台,网站可以享受完备的技术支 持和客户服务。因此是一种比较理想的网上支付形式。 1 3 当前电子支付系统的问题 目前第三方在线支付系统都对商家的网站平台有所限制,存在兼容性问题 4 实现上较为复杂,故收费也较高,不利于推广。再者商家使用并不十分方便,需 要登录到支付网关去查看交易情况。在商家的后台管理的实际操作中存在安全隐 患,如没有实现商家的交易信息安全下载。 1 4 新兴技术对电子支付系统的影响 x m l ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标记语言) 是i m e m e t 上数据表示 和数据交换的新标准。它是i s o ( i n t e r n a t i o n a lo r g a n i z a t i o nf o rs t a n d a r d i z a t i o n , 国际标准化组织) 的s g m l ( s t a n d a r df o rg e n e r a lm a r k u pl a s t g u a g e ,通用标记语 言标准) 的一个简化子集。x m l 关注信息本身,是w e b 上表示结构化信息的 种标准文本格式。与传统的注重页面信息显示的h t m l ( h y p e r t e x tm a r k u p l a n g u a g e ,超文本链接标示语言) 相比,关注于内容的x m l 具有以下诸多优点: 良好的可扩展性,语言简单有效,可自行定义标记;内容与形式的分离,主要刻 画数据内容,不考虑显示效果;有严格的语法要求,便于分析统一和与数据库信 息转换:便于传输,为纯文本形式,可通过h t t p 协议直接传输,可跨越防火墙, 等等。x m l 的出现和发展对于i n t e r a c t 和i n t r a n e t 产生了巨大的影晌。 x m l 创建出可供任何人从任何地方访问和使用的功能强大的应用程序, x m l 渐渐成为企业间电子数据交换的标准。它极大地扩展了应用程序的功能, 并实现了软件的不间断传输,软件已经不完全是指需要安装的程序,而是己经演 变成了一种服务b 服务。由于w e b 服务是建立在一些通用协议的基础上, 如h t t p ( h y p e r t e x tt r a n s f e rp r o t o c o l ,w w w 服务程序所用的协议) ,s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) ,x m l ,w s d l ( w e b 服 务d e s c r i p t i o nl a n g u a g e ,w 曲服务描述语言) ,u d d i ( u n i v e r s a ld e s c r i p t i o n , d i s c o v e r y ,a n di n t e g r a t i o n ,通用描述发现和集成协议) 等,这些协议在涉及到 操作系统、对象模型和编程语言的选择时,没有任何倾向,因此w 曲服务将会 有很强的生命力。关于w e b 服务的w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ,万维网 联盟) 标准逐渐出台;两个应用程序通过w e b 服务进行远程通信时,所需的标 准核心构件如下图所示: 螺当美瑾 碾鞠黝 飘彝眷避 - s 丑kx l s “鲁蕾“ 情l 籀羲 鞠罅 麓聘 搋 僚辅 瞰h 瓣镰 图1 iw e b 服务的核心构件块 各大厂商也逐步推出了相关的w e b 服务开发环境和解决方案;在目前主流 的操作系统平台上都有相应的开发环境,如:w i n d o w s 平台上的m i c r o s o f tv i s u a l s t u d i o n e t :w i n d o w s 和l i n u x 平台上的s u no n es t u d i o :i b m 的w e b s p h e r es t u d i o 以及b e a 的w e b l o g i cw o r k s h o p 等。 开发人员可以通过调用w e b 应用编程接口( a p i ) ,将w e b 服务集成到应用 程序中,且w e ba p i 调用可以通过互联网发送给位于远程系统中的某一服务。 w e b 服务使组件实现低耦舍和动态绑定,w e b 服务运行时,用户无需知道内部 的实现机制,只需知道服务接口即可实现服务调用,过程简单且使平台集成方便。 另外,w e b 服务使用标准的i n t e m e t 协议h t t p 和x m l 来进行数据的通信 与数据的交互,因此应用w e b 服务技术,可以使得计算机系统之问能够真正摒 除平台差异和实现差异,依靠预先达成一致的w 曲服务规范,完成无缝的系统 对话,减少封装的复杂度。 这样,若将w e b 服务技术应用到电子支付系统的构架中,不仅能简化电子 支付流程的具体实现细节,实现及时( j u s t i n - t i m e ) 集成,而且可解决参与电子 支付的各方系统通信平台不统一的问题,与现有系统方便集成。同时基于w e b 服务可以使支付与物流更紧密的结合,流程更方便,安全性更强。 1 5 本文的组织结构 论文的研究内容及组织结构如下: 1 ) 介绍w e b 服务技术,包括它的概念、相关标准、实现架构和各大厂商 的开发工具等( u d d i ,s o a p , w s d l 等) ,最后,文章讨论基于w e b 服务的电子支付系统的工作机理。( 第二章) 2 ) 研究现有的电子支付系统的优缺点,如何借鉴w e b 服务的各种技术, 构筑一个基于w e b 服务架构的可扩展性好、性能高、能适应数据处理 的高性能电子支付系统的体系结构,及介绍该系统中的子系统。( 第 三童) 3 ) 在w e b 服务架构下,安全技术是关键的设计部分。首先比较h t t p 协议级的安全性和s o a p 级的安全性,然后介绍如何通过s o a p 扩展 技术和s o a ph e a d e r 来保证电子支付的安全性,并实现第三章介绍的 子系统。( 第四章) 4 ) 分析现行的w e b 服务的q o s ,并提出问题的原因和改进的理论。( 第 五章) 5 ) 介绍了下一代w e b 服务,展望了基于w e b 服务的电子支付发展方向, 及并对论文作出总结。( 第六章) 1 6 本章小结 本章力求使读者对电子支付系统有一个大致的了解,并阐述本文的研究内 容。我们首先阐述了当前电子支付系统的发展现状,然后综述了电子支付的研究 情况。第1 1 节简单介绍了电子商务;第1 2 节介绍了电子支付系统的起源和发 展;第1 3 节给出了当前计算机发展下电子支付的发展和面临的挑战;第1 4 节 介绍了新兴的w 曲服务技术及其对电子支付产生的影响,本文所提出的电子支 付系统架构就是基于w e b 服务技术的。本章的最后1 5 节介绍论文的研究内容。 第二章w e b 服务技术 2 1 概述 2 1 1 w e b 服务简介 w e b 服务有两层含义: 一是指封装成单个实体并发布到网络上的功能集合体: 二是指功能集合体被调用后所提供的服务。 简单地讲,一个w e b 服务就是一个u r 。资源、一个组件,它能作为构建模块 来建立分布式应用程序或者用于商业程序的装配,客户端可以通过编程方式请求 得到它的服务,而不需要知道所请求的服务是怎样实现的,这一点与传统的分布 式组件对象模型( d c 0 m ) 不同。w e b 服务所执行的功能可以是简单的请求,如股票 查询、邮政编码查询等,也可以是复杂的商业过程处理。调用w e b 服务类似于w e b 上的组件编程,开发人员通过调用w e b 应用编程接口,将w e b 服务集成进他们的应 用程序中,就像调用本地服务一样。 w e b 服务是为了让地理上分布在不同区域的计算机和设备一起工作,以便为 用户提供各种各样的服务。用户可以控制要获取信息的内容、时间、方式,而不 必像现在这样在无数个信息孤岛中浏览,去寻找自己所需要的信息。毫无疑问, w e b 服务将成为下一代w e b 的主流技术。利用w e b 服务,公司和个人能够迅速 且廉价地通过互联网向全球用户提供服务,建立全球范围的联系,在广泛的范围 内寻找可能的合作伙伴。随着w e b 服务技术的发展和运用,我们目前所进行的 开发和使用应用程序的信息处理活动将过渡到开发和使用w e b 服务。将来,w e b 服务将取代应用程序成为w e b 上的基本开发和应用实体。 2 1 2w e b 服务的体系结构 w e b 服务体系结构基于三种角色( 服务提供者、服务注册中心和服务请求者) 之间的交互。交互涉及发布、查找和绑定操作。这些角色和操作一起作用于w e b 服务构件:w e b 服务软件模块及其描述。在典型情况下,服务提供者托管可通过 网络访问的软件模块( w e b 服务的一个实现) 。服务提供者定义w e b 服务的描述 并把它发布到服务请求者或服务注册中心。服务请求者使用查找操作来从本地或 服务注册中心检索服务描述,然后使用服务描述与服务提供者进行绑定并调用 w e b 服务实现或同它交互。服务提供者和服务请求者角色是逻辑结构,因而服务 可以表现两种特性。图2 1 显示了这些操作、提供这些操作的组件及它们之间的 交互。 图2 1w e b 服务角色、操作和构件 w e b 服务体系结构中的角色 服务提供者。从企业的角度看, 看,这是托管访问服务的平台。 服务请求者。从企业的角度看, 这是服务的所有者。从体系结构的角度 这是要求满足特定功能的企业。从体系 结构的角度看,这是寻找并调用服务,或启动与服务的交互的应用程序。 服务请求者角色可以由浏览器来担当,由人或无用户界面的程序( 例如, 另外一个w e b 服务) 来控制它。 服务注册中心。这是可搜索的服务描述注册中心服务提供者在此发布 他们的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查 找服务并获得服务的绑定信息( 在服务描述中) 。对于静态绑定的服务请 求者,服务注册中心是体系结构中的可选角色,因为服务提供者可以把 描述直接发送给服务请求者。同样,服务请求者可以从服务注册中心以 外的其它来源得到服务描述,例如本地文件、f t p 站点、w e b 站点、广 告和服务发现( a d v e r t i s e m e n ta n dd i s c o v e r yo fs e r v i c e s ,a d s ) 或发现 w e b 服务( d i s c o v e r yo f w e b 服务,d i s c o ) 。 9 2 1 3 w e b 服务的议栈 实现一个完整的w e b 服务体系需要有一系列的协议规范来支撑。 图2 2 w e b 服务”s t a c k ” 其中,传输层和网络层的标准是先前已经定义好的并且广泛使用的:i p 、 h t t p 、s m t p 等。而服务调用协议s o a p 、服务描述协议w s d l 和服务发现集成协 议u d d i ,以及服务工作流描述语言w s f l 是目前开发的w e b 服务的相关标准协议。 关于路由、可靠性以及事务等方面的协议是更高层的待开发的协议。最上层是各 个协议层的公用机制,这些机制一般由外部的正交机制来完成。 从以上这个技术层次图我们可以看到,w e b 服务追求的第一目标是简单性。 但为何有那么多协议,还能说他简单? 首先,这些协议本身都是简单的,无论是h t t p ,f t p 等传统的t c p i p 系统 的网络协议,还是s o a p ,w s d l ,u d d i ,w s f l 等基于x m l 的协议,他们设计原则 中的一个最重要点就是力求简单性。 其次,一个可以使用的w e b 服务应当按照需要选用若干层次的功能,而无需 所有的特性。比如在目前状况下,一个简单应用可能只要使用w s d l s o a p 就可以 架构一个符合规范的w e b 服务了。 最后,所有的机制完全是基于现有的技术,并没有创造一个完全的新体系。 无论是i p v 4 、h t t p 、f t p 这些现有的网络协议,还是s o a p 、w s d l 等这些基于x m l 而定义的协议都是遵循着一个原则:继承原有的被广泛接受的技术,这样才能使 得w e b 服务被广泛接受。 1 0 2 2w e b 服务的关键技术 2 2 1x m l ,w e b 服务的基础 x m l 是构建w e b 服务的理想基础,因为它促进了易于标准化和易于理解的 消息创建。x m l ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标注语言) 提供了一种标 记内容的方式,可以添加关于数据用途的信息。信息使用) ( m l 存储之后,称为 解析器的应用程序就能够可靠地提取相关信息,并根据不同的需要处理。 x m l 可用于各种不同的应用程序,但其实质是:x m l 是一种表示数据的方式。 有时候数据是为数据库准备的,有些时候则是供人阅读的。与这两方面应用相关 的技术,比如数据验证和x m l 转换也已经随着x m l 自身一起发展起来。 x m l 包括验证或者确认的能力、文档结构和文档( 在某种意义上的) 内容。 验证文档有助于防止数据与期望具有特定结构的应用程序进行交互时出现问题, 当x m l 与非x m l 的遗留系统交互时这一点尤其有用。最初的瑚l1 0 推荐标 准包括对文档类型定义( d o c u m e n tt y p ed e f i n i t i o n s ,d t d ) 的支持,d t d 提供 了一些验证能力。w 3 cx m ls c h e m a s 扩展了这种功能,并提供了一种更加类似x m l 的语法。 可通过多种方式使用) 【m l 封装的数据。一种常见的处理方式是通过使用可 扩展样式表语言转换( e x t e n s i b l es t y l e s h e e t l a n g u a g et r a n s f o r m a t i o n s , x s l t ) ,开发人员可以使用x s l t 定义对x m l 文档的操作,以生成特定的结果。 这种动态转换信息的能力允许从单个源文档产生多种输出,无论输出到不同的数 据库还是输出到不同的浏览器。常与x s l t 结合使用的是x s l 。x s l 格式化对象 ( x s lf o r m a t t i n go b j e c t s ,x s l - f o ) 是一种强大而灵活的格式化数据的l 词 汇表。通过x s l t 和x s l 可以把x m l 和h t m l 转化成p d f ( 可移植文档格式) 。 x m l 的优势在于它能够在多种环境中使用。大量涌现的各种x m l 词汇表, 使人们能够立即互相理解。三种最常用的词汇表是可扩展超文本标记语言 ( e x t e n s i b l eh y p e r t e x tm a r k u pl a n g u a g e ,x h t m l ) 、资源定义框架( r e s o u r c e d e f i n i t i o nf r a m e w o r k ,r d f ) 和可缩放向量图形( s c a l a b l ev e c t o rg r a p b i c s , s v g ) 。 x h t m l 是x v i l 形式的h t m l 修订版。x h t m l 文档就是遵守x m l 规则 的h t m l 文档。同时,从业务和表示两方面定义了其他的x m l 词汇表:r d f 提供了一种向x m l 文档添加信息的方式:s v g 提供了一种使用x m l 指定图 形元素的方式( 因为s v g 是基于文本的x m l ,不仅可用于动态生成图形,还可 用于动画和脚本) ;语音可扩展标记语言( v o i c ee x t e n s i b l em a r k u pl a n g u a g e , v o i c e 垤l ) 则用于电话菜单和其他语音相关的系统。 开发x m l 应用程序时常用到几种模型。这些模型可以是基于对象的,如文 档对象模型( d o c u m e n t o b j e c t m o d e l ,d o m ) 和j d o m ;也可以是基于事件的, 如s i m p l ea p if o rx m l ( s a x ) 。通过这些模型创建的a p i 来分析和操纵x m l 结构,另外,j a v a a p i f o r x m l p a r s i n g ( j a x p ) 提供了使用d o m 、s a x 和x s l t 处理x m l 文档的通用接口。 其中最常用的a p i 是c o m ,在这种模型里文档的每个成分被描述成特定类 型的节点。这些节点按照父子关系组织。各种不同的语言中都有d o ma p i 的 绑定,如j a v a 、c + + 、p e r l 和p y t h o n 。 s a x 是第二种应用最广的a p i 。和基于对象的d o m 模型不同,s a x 是 一种基于事件的模型,把文档转化成一系列回调,如s t a r t e l e m e n t0 。 x m l 主要有三个要素:x m ls c h e m a ,x s l ( e x t e n s i b l es t y l e s h e e tl a n g u a g e , 可扩展样式语言) 和x l l ( e x t e n s i b l el i l l kl a n g l l a g e ,可扩展链按语言) 。x m l s c h e m a 规定了x m l 文件的逻辑结构,定义了x m l 文件中的元素、元素的属性 以及元素和元素之间的关系,它可以帮助x m l 分析程序校验x m l 文档是否有 效和具有良好的格式。x s l 是用于规定x m l 文档样式的语言,它能在客户端使 w e b 浏览器改变文档的表示方法,从而不需要再与服务器进行通信。x l l 将进 一步扩展目前w 曲上已有的简单链接。 x m l 有以下特点: 可扩展性:h t m l 不允许用户自行定义他们自己的标识或属性:而在x m l 中,用户能够根据需要,自行定义新的标识及属性名,以便更好地从语义 上修饰数据,同时也比较符合自然语言的习惯。 结构性:h t m l 不支持深层的结构描述;而x m l 的文件结构嵌套可以复 杂到任意程度,能表示面向对象的等级层次。 可校验性:h t m l 没有提供规范文件以支持应用软件对h t m l 文件进行 的结构校验;而x m l 文件可以包括一个语法描述,使应用程序可以对此文 件进行结构确认。 功能:h t m l 用来显示数据;而x m l 则是描述数据语义,可以以多种方 式显示,也可以由其它应用软件进行深入的处理。 2 2 2s o a p ,w e b 服务的核心 s o a p ( s i m p l eo b j e c t a c c e s sp r o t o c o l ,简单对象访问协议) 是一个用来在分 散、分布式的环境中交换信息的简单协议,它是一个基于x m l 的协议。因为 s o a p 消息的格式是标准的并且基于x m l 标准,所以s o a p 可以用来在不同的 计算机体系结构、不同的语言和不同的操作系统之间进行通信。w e b 服务就是使 用s o a p 作为它的标准通信协议。 s o a p 消息完全基于x m l ,它包含以下部分: 封装( e n v e l o p e 元素) :e n v e l o p e 元素是表示s o a p 消息的顶级元素, 它是必需的。e n v e l o p e 元素包含两个子元素h e a d e r 和b o d y , 这两个元素 中的内容是由应用程序定义的但不属于s o a p 规范。 报头( h e a d e r 元素) :报头是可选的,它是一种用来向s o a p 消息添加 额外特性的通用机制。通过这种机制,添加额外特性时不需要得到通信 双方的事先同意,正是通过这种机制,应用程序才能以特定的方式对 s o a p 消息进行扩充。报头的直接子元素称为报头条目( h e a d e rb l o c k ) , 它表示一些逻辑数据分组,可被传输路径中的s o a p 节点进行处理。 s o a p 定义了一些属性来指出谁应该处理某个特性及这个特性是可选的 还是必须要处理的。 报体( b o d y 元素) :b o d y 元素中包含发送给最终目标节点的信息,它 是必需的。s o a p 消息的最终接收者必须要正确处理b o d y 元素。 下图显示了s o a p 消息的结构。 图2 3s o a p 消息的结构 客户程序在访问x m l w e b 服务时,需要使用x m l 序列化把方法调用和返 回结果序列化为能够在网络中传输的s o a p 消息。图2 4 显示了客户程序与x m l w e b 服务之间的通信过程。 x 图2 4 :s o a p 通信过程 从图2 4 中可以看出,客户程序与w e b 服务之闻匏通信过程为: ( 1 ) 客户代码创建代理对象并调用它的方法。 ( 2 ) 客户端把代理对象发出的实际调用序列化为s o a p 请求消怠。 ( 3 ) s o a p 请求消息通过i n t e r a c t 传送到服务器。 ( 4 ) 在服务器端,把接收到的s o a p 请求消息反序列化为相应的方法 ( 5 ) ( 6 ) ( 7 ) ( 8 ) ( 9 ) 调用。 服务器调用w e b 服务对象中的相应方法。 服务器把方法调用的返回结果序列化为s o a p 响应消息。 通过i n t e m e t 把s o a p 响应消息传送到客户端。 客户端把接收到的s o a p 响应消息反序列化为返回结果并传给代 理对象。 代理对象把返回结聚返回给客户代码。 1 4 通过以上的介绍可以看出s o a p 有以下特点 简单性:s o a p 规范定义的消息结构非常简单( 一个e n v e l o p e 包含两个组成 部分:h e a d e r 和b o d y ) ,除了这个基本的消息结构外,s o a p 没有定义额外 的结构标准,没有定义自己的编码格式,也没有定义自己的传输协议。 可扩展性:s o a p 可以使用任意的模式定义方式来定义内部传输内容的结构 ( 编码方式一般使用x m ls c h e m a ) ,可以与任意的网络传输协议( 如h t t p 、 s m t p 和p o p 3 等联合使用完成传输。 独立性:s o a p 是基于文本的协议,因此它独立于任何编程语言、对象模型 和操作系统。 此外,s o a p 的消息路径机制和可扩充的h e a d e r 和b o d y 机制又为分布式 计算提供了很好的支持。 2 2 3w s d l ,w e b 服务的描述 w s d l 是一种x m l 应用,它将w e b 服务定义为组服务访问点或端口的 集合,客户端可以通过这些服务访问点对包含面向文档信息和面向过程调用的服 务进行访问( 类似远程过程调用) 。w s d l 首先对访问的操作和访问时使用的请求 响应消息进行抽象描述,然后将其绑定到具体的传输协议和消息格式上,最后 定义具体部署的服务访问点。相关的具体部署的服务访问点通过组合就成为抽象 的w e b 服务。 在w s d l 中,由于服务访问点和消息的抽象定义已从具体的服务部署或数 据格式绑定中分离出来,因此可以对抽象定义进行再次使用。其中消息是指对交 换数据的抽象描述;而端口类型指操作的抽象集合。用于特定端口类型的具体协 议和数据格式规范构成了可以再次使用的绑定。将w e b 访问地址与可再次使用 的绑定相关联,可以定义一个端口,而端口的集合则定义为服务。因此,w s d l 文档在w 曲服务的定义中使用下列元素:t y p e s 、m e s s a g e 、o p e r a t i o n 、p o r t t y p e 、 b i n d i n g 、p o r t 和s e r v i c e 。w s d l 文档的结构组织如图2 5 所示。 图2 5 :w s d l 文档的结构组织图 其中,t y p e s 是一个数据类型定义的容器,包含了所有在消息定义中需要的 x m l 元素的类型定义。m e s s a g e 具体定义了在通信中使用的消息的数据结构。 m e s s a g e 元素包含了一组p a r t 元素,每个p a r t 元素都是最终消息的个组 成部分,每个p a r t 都会引用一个d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年肿瘤学肿瘤治疗方案讨论答案及解析
- 中考英语阅读专项练习卷
- 2025年全科执业医师继续教育模拟考试卷答案及解析
- 2025年皮肤科常见病例诊断与治疗模拟考核答案及解析
- 2025年耳鼻喉科手术技术操作规范考试答案及解析
- 提升员工团队凝聚力方法
- 品牌推广中的独特卖点设计
- 2025年口腔医师口腔疾病诊断与治疗方案设计答案及解析
- 制作卡通动漫角色设定方案
- 2025年福建南平邵武市金鑫林业发展有限公司招聘24人笔试参考题库附带答案详解
- 贷款中介签服务合同模板(3篇)
- 贵阳市2026届高三年级摸底考试物理试卷(含答案)
- 美发编发基础知识培训课件
- 同期线损培训课件
- 反诈知识竞赛试题及答案
- 钢筋加工棚租赁合同范本
- 2025年电梯检验员资格考试历年真题及答案试题试卷(含解析)
- 眼整形课件教学课件
- 公司法务知识培训会课件
- 中国诗词协会入会申请表
- 实现离心泵自动吸水的方法
评论
0/150
提交评论