2011-05-23 12 views
1

私はFlexで新しく、外部URLの情報から情報を取得しようとしています。だから、今私は、ユーザーがリンクをクリックすると(別のサーバーからURLを埋め込んだIFrameを呼び出す)という呼びを使っています。成功した場合(URLで送信された引数に基づいて)、正しいページがロードされます。しかし、失敗した場合(私が与えたリンクに埋め込まれたWebページで例外エラーが発生します)、エラーを表示して前のページに戻るポップアップを表示する必要があります。私は取得しているURLサイトから例外エラーが発生しているかどうかを確認する方法はありますか?Flexで埋め込みURLによってスローされた例外をキャッチ

URLの情報を最初に読み込むことは可能ですか?成功すれば読み込み、ポップアップが表示されない場合はどうすればいいですか?

**追加のノート、私は500

は、任意の助けを事前にありがとうございサーブレット例外のhttpをキャッチしようとしています。

以下はコードの断片なので、クリックボタンでこのコンポーネントを呼び出すと、このIFrameがurlで表示されますが、httpステータスコードが500かどうかを知りたい場合は、私はこの呼び出しを停止し、代わりにエラーポップアップを読み込むことができます。

**コードを追加しましたあなたはセキュリティ上の制限のためにiframe内にこれを行うことはできません

<mxmlcomp:IFrame id="iFrameViewBoxA" 
       source="{my.url}" 
       width="100%" height="100%" 
       frameLoad="iFrameContents()" 
       /> 
    <script>... 
    private function iFrameContents():void { 
      ExternalInterface.call("iFrameContents()"); 
     } 
    </script> 
+0

いくつかのコードスニペットを追加できますか? Adobe AIRの場合、コールのHTTP応答コードを確認できますが、これがFlexで可能かどうかはわかりません。 – Kyle

答えて

0

スニペット。これは実際にはブラウザの制限であり、Flexとは関係ありません。

+0

しかし、リクエストを送信してステータスをhttpから返すことはできませんか?例えば、サイトがhttp、500、400などのHTTP応答コードを返すのかどうかなど。また、サイトhttp 500からサーブレットエラーが戻ってきていません。どんな場合でもちょっとだけの情報 – rbz

+0

いいえ、このmxmlが実際にあなたの同じドメインにない真のiframeにレンダリングされていれば、iframeコンテンツまたはリクエスト。代わりに、URLLoaderを使用して外部ページのコンテンツを取得し、ユーザーが実際にやり取りする必要がない場合は、直接そのページを操作することもできます。あなたはこのデータを元に戻そうとしていますか? – Jordan

関連する問題