事実上、FlexではHTTPStatusEventは使い物にならないのだ。
その理由はリファレンスガイドを読むとわかるのだけど、ほとんどのブラウザではstatusは常に0になってしまうから。
HTTPStatusEvent - status
Flash Player または AIR がサーバーからステータスコードを取得できなかった場合、またはサーバーと通信できなかった場合、記述したコードにデフォルト値の 0 が渡されます。値 0 は、どのプレーヤーでも生成される可能性があります (例えば、正しくない形式の URL が要求された場合など)。また、特定のブラウザで実行される Flash Player プラグインでは、HTTP ステータスコードをプレーヤーに渡すことができないので、常に値 0 が生成されます。該当するブラウザには、Netscape、Mozilla、Safari、Opera および Internet Explorer for the Macintosh があります。
この記述の最後のところを見ると…。
該当するブラウザには、Netscape、Mozilla、Safari、Opera および Internet Explorer for the Macintosh があります。
つまり、Windows上のInternet Explorer以外はダメなんじゃ?
要件でそこまでブラウザを限定できるのならかまわないけど、それは厳しいだろうと思う。
HTTPStatusEventはAIR用だと考えておくことにする。
同じ残念な思いをした方が他にもいた。
http://d.hatena.ne.jp/funnystone/20071018/1192696222
0 件のコメント:
コメントを投稿