フィーダーのイニシャライズ
May 20, 2006
今度は、AoD0.9で問題が。。。
この間も問題を報告して下さったKAZ氏より、コメント。
「 たまにPHSの低速回線でつなぐのですが ページを読み終わるぐらいのところでエラーが出てブラウザが「ページが表示できません」の画面になります。 構文エラーと出るのですが、。。。」
これは多分、以前こちらで対策したIEの問題だと見当をつけた。
ここだけの話、以前の対策は、
「フィーダーへのフィードを5秒間待って、
フィーダーのイニシャライズ(「関連商品」ボタンの有効化)をかける」
という単純なもので、
本格的な対応を考えなくてはと思っていた矢先。
で、今回は細かく念入りの対策をしてみた。
フェーズ1)
ページのロード完了前に、フィーダーが読み込まれた時にフィード開始。
フェーズ2)
ページのロード完了後に、フィードの完了を待ち始める。
フェーズ3)
フィードの完了後、フィーダーのイニシャライズをかける。
今回のポイントはフィードの完了を検知出来るようにしたこと。
これは、PYLORI-KIMで実装した方式の応用。
尚、フィードのタイムアウト時間は30秒、
イニシャライズの遅延時間は0.5秒とした。
これで、一時フィードは今まで通りページのロードを待たずに表示し、
「関連商品」ボタンはロード完了後にクリック出来るようになる。
フィードのタイムアウトを十分長く取れば、フェーズ2は要らないはずで、
「関連商品」ボタンももっと早く有効に出来るのだけど、
念には念を入れて、待つことにした。
でも、通常はフェーズ2,3はほぼ同時で、
以前(単純に5秒待つ)よりは早く有効になるはず。
が、ページ自体のコンテンツが重いと結局遅くなるのか。。。
ってこれでうまく行かなかったら、どうしよう。。。
ユン
フィード、フィーダー、フェーズって紛らわしいなぁ。
<用語解説>
フィーダー)
餌箱の意。
ここでは、AoDのタグが貼られてるページ内のエリアのこと。
サーバーからここに商品情報が動的にフィードされる。
フィード)
餌を与えることの意。
ここでは、サーバーからフィーダーに対して商品情報を送信すること。
フェーズ)
進行状況の段階、局面。
ここでは、AoDプログラムの実行状況の各局面をさす。


