首頁‎ > ‎電子期刊‎ > ‎2005 年 第 12 期‎ > ‎

/Flash與Web Service的整合運用

摘要

  • 文章編號:20050805
  • 投稿日期:2005/07/25
  • 作者:林恩正
  • 備註:


一個網頁的組成,至少包括資料及美術兩個部分;資料指的是一張網頁要顯示的文字,美術指的是頁面的排版、顏色、圖片、動畫…等等。隨著資料庫的應用以及 PHP、Asp、Asp.net等網站技術的發展,資料已經從死板板刻在html檔案中跳脫出來,在同一個網頁中可以經由運算、或資料庫取得資料等方式呈 現出不同的內容。網頁的內容可能是隨時都在變動的。


當一個網頁有了內容,要如何將內容顯現給使用者看到呢?使用文字與超連結,的確可以讓使用者看到這些內容,但是看起來就像一篇word檔一樣,字型可以改、大小可以改、顏色可以改,但是怎麼改不就是那樣。為了網頁能夠美觀,經常就捨棄了簡單的文字,改成圖片或動畫。


這些都不是什麼新奇的事了,但是您有沒有發現,動態的網頁資料就只能是那樣子,會被做成圖片動畫的也就是那些東西。您有沒有看到過一個頁面,比如說是一個討論區好了,在您瀏覽的時候,可以將標題從資料庫中讀出來,並且像畫一樣跳波浪舞呢?


在flash裡頭,要讓一段文字跳起波浪舞,應該不難吧。真正的問題在於,如何讓你要它跳波浪舞的文字,是從資料庫中取得,是會變動的資料。Flash要如何從資料庫中取得資料呢??

Asp.net 可以從資料庫取得資料,然後將資料編輯成一張網頁,傳給使用者看。這是很不錯的方式,將資料庫的連結資料保護在Asp.net的程式中,使用者無法取得, 對資料庫也多了一層保護。Flash沒有提供server可以做資料庫間的中繼站。但是,flash有支援web service,利用web service來做中繼站,似乎是一種可行的做法,實際做起來也相當簡單。


以瀏覽人數的計數器為例,我們用資料庫儲存瀏覽人數,寫一個web service可以將人數從資料庫讀出來,flash中可以跟web service溝通取得讀取出來的資料,最後要讓取得的瀏覽人數成為一個動畫就不是問題了。


從web service開始,我們可以用.net來寫一個簡單的service,新增一個專案,選擇”ASP.NET Web Service”開啟一個web service專案,並加入程式碼

這樣就算完成一個Service的程式,接下來要讓flash與這個Service溝通,取得資料。


在flash的開發面版中有一個網路服務的面版,


下面則是面版的內容,在這個面版中,左上角的藍色圓形圖案可以定義網路服務,下面的清單是已經定義好的服務
首先將剛才完成的網路服務加入到面版中,會在清單中看見服務的內容,對要使用的服務點右鍵選”增加方法呼叫”,flash會在畫布上新增一 個”WebServiceConnector”原件,此原件會用來呼叫WebService,我們將它命名為” Service”在影格1的動作中
,輸入以下程式碼。

這段程式碼,會將要輸入的資料告訴Sservice原件,然後Service呼叫WebService。接著在”Service”的動作中加入以下程式碼。

on(result)是指在呼叫後取得回傳時執行下面的程式,_root.text1.text=this.results;是將傳回的資料放到text1這個文字方塊之中。


如此一來,每一次開啟這個flash,就會將資料庫中的數值加1並且顯示在flash中,接下來就可以繼續做下去,讓的text1成為一個動畫。就有一個會動的網頁計數器了。


註:flash的動作有分兩種,一種是影的動作是說當動畫撥放到該影格時會執行。第二種是原件的動作,是指定當某一個原件產生事件時,會執行指定的程式,語法為” on(指定某一個事件) “下面接著要執行的程式碼。容易產生混淆,特此說明。

Comments