URLLoader クラスが上手く使え〜ん・・・と思ってたら[AIR/Flex]
(2009-01-30 02:21:06) by shinoda


ActionScript で HTTP サーバからコンテンツを取得するプログラム。

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication
 xmlns:mx="http://www.adobe.com/2006/mxml"
 layout="absolute"
 initialize="initProc();">
 
 <mx:Script>
  <![CDATA[

   // HTTP ロード処理開始
   private function initProc():void {

    var req:URLRequest = new URLRequest("http://www.exsample.com/");
    var loader:URLLoader = new URLLoader();
    loader.addEventListener(Event.COMPLETE,loadComp);
    loader.load(req); // 取得処理開始(イベント発生待ち)

   }

   // コンテンツのロードが完了した時の処理
   private function loadComp(evt:Event):void{

    var loader:URLLoader = evt.target as URLLoader;
    trace(loader.data); // 内容表示

   }

  ]]>
 </mx:Script>

</mx:WindowedApplication>

日本語変換の問題がありますが・・・(^^;まあ、そこは考えないものとして、一応、これで http://www.exsample.com/index.html の内容が取得できます。

やっぱ間違ってないよなあ。

なのに何で、本番ソースの方は、

Error #2044: Unhandled ioError:. text=Error #2032: Stream Error. URL: http://www.exsample.com/idex.html

なんてエラーが出るの!!

・・・あ、テストデータじゃ、index.html が idex.html になってる・・・。URL 間違えてるじゃん・・・

ああ・・・ただの typo だったのか・・・

HTML ファイルを XML オブジェクトにそのまま突っ込んでエラーになってるところを直したリ色々してたんで、すっかり自分の書いたプログラムの方を疑っちゃったぜ。

ほぼ半日無駄にした・・・

まあ、新しい言語を習得するときにはありがちな話だけど、二連チャンでくだらないミスで時間を無駄にしちゃったなあ・・・

またも反省。

 

<追記>
どっちみち、ちゃんと
loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
なイベントリスナーは入れとかなきゃね。


コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る

Powered by
MT4i 3.0.8