2011年2月22日 星期二

淺談Flash傳值(一)

終於我也會玩部落格了
不免俗地也來寫一下技術文章
魷魚一開始不知道寫甚麼類型的
那我們就問問章魚
章魚:"那來試一下網路傳輸好了"
為了方便起見,我們向雲端找尋一些可以互丟資料的地方來試試看
身為自封Google2011年推廣小惡魔的小弟來說
Google尋找再適合不過了
用了不需要太長的時間
來到了http://www.google.com.tw/ig/api?weather=Drammen這地方
以及"http://www.google.com.tw/ig/api?hl=zh-cn&weather=,,,"+point.y*1000000+","+point.x*1000000
經過不知道為什麼的頓悟
想起來可以透過丟城市名稱或是經緯度給上面這兩位NPC,取得當地的天氣資料
這時候就可以來點簡單的測試了
package {
 import flash.display.*
 import flash.events.*
 import flash.net.*;
 import flash.text.*
 import flash.system.System
 public class netTrans extends Sprite {
  public var url:String;
  public var myRequest:URLRequest ;
  public var variables:URLVariables;
  private var loader:URLLoader
  public function netTrans() {
   addEventListener(Event.ADDED_TO_STAGE, addToStageHandeler)
  }
  private function addToStageHandeler(_e:Event) {
   removeEventListener(Event.ADDED_TO_STAGE, addToStageHandeler)
   preset()
  }
  private function preset() {
   System.useCodePage=true//因Google回傳的中文編碼關係,所以須設定
   url = "http://www.google.com.tw/ig/api"//需要傳值串接的網址
   myRequest = new URLRequest(url)//新增url Request
   variables = new URLVariables()//新增需傳送的變數
   variables.weather="Taipei"//指定變數名稱及值
   myRequest.data = variables//將變數指定給URLRequest
   myRequest.method = "GET"//設定傳送類型為GET
   loader = new URLLoader();
   loader.addEventListener(Event.COMPLETE, loadCompleteHandeler);//監聽收到回傳值時的Event
   loader.load(myRequest);//傳送
  }
  private function loadCompleteHandeler(_e:Event) {
   var __xml:XML=new XML((_e.target.data))//Google回傳的值為XML
   trace(__xml)//trace看看
  }
 }
}
有了這個XML我們就可以開始做許多想要的事情了.......待續
範例檔下載

沒有留言:

張貼留言