看来就属我的动作最慢了,花火已经写了ColdFusion的Webservice,小杰也搞定了java的WebService。不管了,反正还是要写的。关于soap、wsdl和uddi方面的东西我也不想再重复了。现在来做一个很简单的Web服务,也很无聊。运行.net程序,那就要先装好.net framework再说,因为程序要调用framework的基类。就是你输入一个数字N,然后由服务器计算返回这个数字的斐波那契数数列的第N项的值。
你学计算机不知道这个数列?我faint!好了,下面是斐波那契的介绍(Copy过来的)
斐波那契(斐波那契是意大利数学家,约1170一约1250年) 数列是由一个“兔子问题”引起的,即:
假定一对大兔子每一个月可以生一对小兔子,而小兔子出生后两个月就有生殖能力.问从一对大兔子开始,一年后能繁殖成多少对兔子?这就产生斐波那奖数列:
1,1,2,3,5,8,13,21,34…
其规律是从第三项起,每一项都是前两项的和.用递推公式表达就是
a1=a2=1,
an=an+1十an-2(n>=3),
OK,明白了继续上路。我们就为实现上面的功能,写一个WebService程序,管你用什么软件编辑,用NotePad都可以。如下:
代码拷贝框
[Ctrl+A 全部选择 然后拷贝]
然后把它存成fibonacci.asmx.,后缀名为asmx。用IIS游览http://localost/fibonacci.asmx,则进入Fibonacci帮助页面。如图所示:
点击正文第一行的Service Description则进入Web服务描述页面,就是WSDL页面http://localhost/fibonacci.asmx?WSDL。如图所示:
在帮助页中,GetSeqNumber就是你的服务方法,点击GetSeqNumber进入http://localhost/fibonacci.asmx?op=GetSeqNumber。如图所示:
你可以在参数输入框进行通过HTTP POST协议的测试。比如你输入10,得出的结果就是:
<?xml version="1.0" encoding="utf-8" ?>
<int xmlns="http://tempuri.org/">55</int>
从中可以看出答案是55。
下面是flash中的了。 首先建立界面。一共有四个组件要拖入场景中,请看下面的列表。
组件类型 |
实例名称 |
作用 |
WebServiceConnector |
ws |
连结WebService服务,并且和textInput组件、label组件进行数据绑定。 |
TextInput |
data |
输入数据n |
Label |
answer |
得出斐波那契数列第n项值 |
Button |
bt |
数据触发器 |
建好后如图所示:
点击ws,用Alt+F7弹出组件属性检查器。在参数选择项中定义如图所示的参数:
然后Binding项中定义输入参数,和得到的结果。如图所示:
OK,点击params.fibIndex,在Bind to 项选择TextInput组件实例data。如图所示:
因为参数fibIndext是由输入框所得。然后再定义results的Bind to 绑定到Label组件实例answer上。这时所有的数据绑定工作都作完了。
最后在按钮上加一个命令(我的是由Baheviors自动生成的,原因――懒):
on (click) {
this._parent.ws.trigger();
}
用Ctrl+Enter测试一下,如图所示成功了!
源代码下载