1 / 39
文档名称:

webservice接口开发.doc

格式:doc   大小:483KB   页数:39页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

webservice接口开发.doc

上传人:小屁孩 2020/7/24 文件大小:483 KB

下载得到文件列表

webservice接口开发.doc

文档介绍

文档介绍:体系结构中非常强调WebService,Framework开发工具有很大的吸引力,Framework开发工具的。在这篇文章中我们将谈论下面几个方面的问题 1、客户端怎样和WebService通信的 2、使用已存在的WebService创建代理对象 3、创建客户端。这包括: Web浏览器客户端 Windows应用程序客户端 WAP客户端最好的学****方法是建立一个基于真实世界的实例。我们将使用一个已存在的WebService,这个WebService从纳斯达克获得股票价格,客户端有一个简单的接口,该接口的外观和感觉集中了建立接口的多数语句。客户端描述三种客户端都接受客户输入的同一股票代码,如果请求成功,将显示公司名和股票价格,如果代码不可用,将显示一个错误信息。客户端都设置有"GetQuote"和"Reset"按钮以初始化用户的请求。开发中的注意事项作为我的集成开发环境,MobileWeb,因此,我们需要使用文本编辑器创建wap客户端,MobileWeb。客户端怎样与WebService通讯我们先复****一下WebService的功能,在我得上一篇文章中曾展示一幅图(如图一),执行远程调用调用b点web服务器上的东西,这次通讯由SOAP和HTTP完成。我们实际执行了b点web服务器上的方法吗?对于新手来说这是一个关键问题,由此你可以想到一系列的安全威胁,作为系统管理员我们不可能让随便什么人使用我们的web资源,让怀有恶意的人破坏敏感数据,而且也不能不提到带宽问题。我们还记得这是一个分布式应用程序,因此我们还不得不关心数据的配置。为解决这些问题,我们需要复制在用户web服务器上的对象行为,在我们的例子中,我们需要复制b点WebService针对a点的功能,这就意味着我们要创建充当原始webservcie行为的代理对象(proxyobject),这个代理对象象原始WebService那样具有所有的数据接口。那么我们怎样得到公共数据接口的呢? 各位是否还记得WebService代码中的关键字Webonly,每一个Webonly的方法都会被复制到代理对象中,这样将保护我们的敏感数据,避免受到来自WebService终端(比如:b点)的有恶意的黑客的攻击。这种方法我们称为在a、b之间进行的"对象数据同步交换",这一过程称为创建"对象代理". 现在看看图1的修正版,如下图: 代理对象是WebService的基础慨念,所以创建WebService的第一步是创建代理对象,然后我们可以通过多种平台(Web浏览器,WAP,PersonalDigitalAssistant[PDA],SOAP客户端)从代理对象获得数据。创建代理WebService对象 Framework中携带了一个创建代理对象的工具"",在MS_DOS快捷窗口使用这个工具创建代理对象。语法如下:WebServiceUtil/c:proxy/pa:HTTP://yourDomain/someFolder/ ?SDL/c:proxy指示编译器创建一个代理对象/pa:<WebServerURL>找到sdl文件的路径,最后面的"?SDL"目的是使WebService获得SDL订约上面的是必须要的参数,现在解释一下其他重要参数:/disco:<FileName>创建一个Discovery文件,对不知道精确的url地址的用户而言,Discovery文件是找到WebService的机制之一。它是一个提供WebService的简要说明的xml文件,工程将自动创建一个缺省的Discovery文件作为新工程的一部分,也可以启动"DynamicDiscovery"自动跟踪,/l:<LanguageCode>语言可以是C#,VisualBasic或者jscript等,如:/l:Csharp./n:<Namespace>该类所在的名字空间。该名字空间的所有类均可访问这个代理对象。/o:<Location>表示放置创建的文件的位置。缺省为现行目录。/i:<Namespace>附加的名字空间,该名字空间是将输入该类的名字空间。/protocol:<protocolName>应用的协议,如:SOAP,HTTPGET或HTTPPOST。缺省值为:SOAP 。这是一个在WebServiceClients名字空间中的C#文件,当你创建客户端时,将认识到WebServiceClients名字空间的重要性。现在编译C#类,便产生了一个连接客户端工程的DLL文件。,将其置于"bin"目录下。。如果想了解有关编