利用Flash5的XML能力,用SOAP进行通讯,可以创建Flash界面Web应用程序。SOAP(Simple Object Access Protocal)是通过网络平台在不同的系统间交换数据的方法。SOAP使用XML文档,通过类似于HTTP的协议处理网页的请求和和回应动作。
由微软的.NET和Apache SOAP看来,SOAP是用来在不同的系统间交换数据协议中是最方便的一种。
这篇文章中,你可以看到怎样建立一个基于Flash的计算器,并利用SOAP进行远程过程调用(RPC)在服务器上建立简单的计算程序。
要完成这个例子,你需要安装了Flash5,微软的SOAP Toolkit2.0 SP2,Visual Basic,Windows NT/2000 server和IIS。
本程序需要建立服务器应用程序和监听器,用来处理所有收到的SOAP请求。这个程序使用了微软的ASP监听器和SOAPCalc ActiveX DLL,这些都可以在微软的SOAP Tookit中找到。
另外,还需要一个封装了SOAP的Flash组件,这个免费的组件可以在http://software.mrev.com/soap.asp下载到。
都准备好了之后,让我们开始吧。
第一步:建立ASP监听器
在服务器端,需要对进入的SOAP请求进行操作。可以使用ASP文件来处理这些请求。首先,在IIS中建立一个新的目录或是虚拟目录,并命名为SOAPCalc。在这个目录中,建立一个新的ASP文件,并命名为“default.asp”
输入以下代码:
<%@language=vbscript%> <% Set CalcSrv = Server.CreateObject("SOAPCalc.CalcSrv") CalcSrv.Process Request, Response %> |
这个ASP页面接收从Flash中发送来的SOAP XML请求,并把Request和Response对象传递给CalcServ组件
图1 |
CalcSrv从数据流中读入并解析SOAP请求,完成所需要的计算。并且把ASP的Response对象通过SOAP送到客户端。
图2 |
客户端的Flash应用程序读取了返回数据,刷新计算器的显示。