電気ウナギ的○○

About Home

URLの後ろに改行なんていれてちゃ駄目だったのね

shinoda (2011年1月22日 14:25)

HTMLコンポーネントでも、HTMLLoaderクラスでも表示は一緒」に書いたように、AIR アプリのHTMLコンポーネントでインターネット上のWebページを表示した時に、外部CSSファイルや画像ファイルを一切読み込まない(つまり、URLで指定したHTMLだけ読み込んでお終い)という状況が発生していた。

「なんやねん!こんなしょぼい仕様なんかい!?」と怒っていたのだが、原因は俺だった。ごめん・・・Adobe社。

結局、原因は「URLの最後に改行コードがついていた」からであった。

テキストファイルから URL を読み込んで、それをHTMLコンポーネントのlocationプロパティにセットするのだが、末尾の改行コードをとりわすれてた。

なので、

url  = (url.split("\r")).join("");
url  = (url.split("\n")).join("");

web.location   = url;

という具合に、locationプロパティにセットする前に CR/LF コードを削除するようにしてやればバッチリであった。

URL の後ろに改行コードが入ってると、怪しいURLと判断して、そこからのリンクを全部無視してしまうとか、そういう仕様なのかね?

URL の後ろに改行コードが入ってると、「外部の画像ファイルやCSSファイル等を一切読み込まない。その代わり、ローカルディスク上にある画像であれば表示できる」という動きをする。ローカルディスク上の画像ファイルは読み込めるということは、やっぱセキュリティ上の制限をかけてるのかなあ・・・

ま、単純に Flex にバグがあって、予想外の動きをしているという可能性も捨てきれんがなあ(笑)

電気ウナギ的○○

電気ウナギ的○○

About Back

コメント(0)

電気ウナギ的○○

電気ウナギ的○○

About Back

トラックバック(0)

トラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/1450

電気ウナギ的○○

About This Site

電気ウナギ的○○
岩国在住。広島で働く超零細IT企業社長のいわゆる社長日記。
何か、酒と食い物のことばかり書いているようで・・・お察しのとおり、肥満体です:-)


2011/06/24
iPhone用サイト公開

Create with jQuery, jQTouch.


CLOSE