看來就屬我的動作最慢了,花火已經(jīng)寫了ColdFusion的Webservice,小杰也搞定了java的WebService。不管了,反正還是要寫的。關(guān)于soap、wsdl和uddi方面的東西我也不想再重復(fù)了,F(xiàn)在來做一個很簡單的Web服務(wù),也很無聊。運行.net程序,那就要先裝好.net framework再說,因為程序要調(diào)用framework的基類。就是你輸入一個數(shù)字N,然后由服務(wù)器計算返回這個數(shù)字的斐波那契數(shù)數(shù)列的第N項的值。
你學(xué)計算機不知道這個數(shù)列?我faint!好了,下面是斐波那契的介紹(Copy過來的)
斐波那契(斐波那契是意大利數(shù)學(xué)家,約1170一約1250年) 數(shù)列是由一個“兔子問題”引起的,即:
假定一對大兔子每一個月可以生一對小兔子,而小兔子出生后兩個月就有生殖能力.問從一對大兔子開始,一年后能繁殖成多少對兔子?這就產(chǎn)生斐波那獎數(shù)列:
1,1,2,3,5,8,13,21,34…
其規(guī)律是從第三項起,每一項都是前兩項的和.用遞推公式表達就是
a1=a2=1,
an=an+1十a(chǎn)n-2(n>=3),
OK,明白了繼續(xù)上路。我們就為實現(xiàn)上面的功能,寫一個WebService程序,管你用什么軟件編輯,用NotePad都可以。如下:
代碼拷貝框
[Ctrl+A 全部選擇 然后拷貝]
然后把它存成fibonacci.asmx.,后綴名為asmx。用IIS游覽http://localost/fibonacci.asmx,則進入Fibonacci幫助頁面。如圖所示:
點擊正文第一行的Service Description則進入Web服務(wù)描述頁面,就是WSDL頁面http://localhost/fibonacci.asmx?WSDL。如圖所示:
在幫助頁中,GetSeqNumber就是你的服務(wù)方法,點擊GetSeqNumber進入http://localhost/fibonacci.asmx?op=GetSeqNumber。如圖所示:
你可以在參數(shù)輸入框進行通過HTTP POST協(xié)議的測試。比如你輸入10,得出的結(jié)果就是:
<?xml version="1.0" encoding="utf-8" ?> <int xmlns="http://tempuri.org/">55</int>
從中可以看出答案是55。
下面是flash中的了。 首先建立界面。一共有四個組件要拖入場景中,請看下面的列表。
組件類型 |
實例名稱 |
作用 |
WebServiceConnector |
ws |
連結(jié)WebService服務(wù),并且和textInput組件、label組件進行數(shù)據(jù)綁定。 |
TextInput |
data |
輸入數(shù)據(jù)n |
Label |
answer |
得出斐波那契數(shù)列第n項值 |
Button |
bt |
數(shù)據(jù)觸發(fā)器 |
建好后如圖所示:
點擊ws,用Alt+F7彈出組件屬性檢查器。在參數(shù)選擇項中定義如圖所示的參數(shù):
然后Binding項中定義輸入?yún)?shù),和得到的結(jié)果。如圖所示:
OK,點擊params.fibIndex,在Bind to 項選擇TextInput組件實例data。如圖所示:
因為參數(shù)fibIndext是由輸入框所得。然后再定義results的Bind to 綁定到Label組件實例answer上。這時所有的數(shù)據(jù)綁定工作都作完了。
最后在按鈕上加一個命令(我的是由Baheviors自動生成的,原因――懶):
on (click) { this._parent.ws.trigger(); }
用Ctrl+Enter測試一下,如圖所示成功了!
源代碼下載
出處:藍色理想
責(zé)任編輯:壞豬弟弟
◎進入論壇Flash專欄版塊參加討論
|