AS3(XIFF 3.1.0 lib) を使用して Facebook チャットにログインする Facebook アプリケーションを実装して、アプリケーションがユーザーの友人に通知を送信できるようにします。この時点で、アドビが必要とするクロスドメイン ポリシー ファイルに関する問題に遭遇しました。問題は、( Security.loadPolicyFile("xmlsocket://chat.facebook.com:5222") を使用して) chat.facebook.com からクロス ドメイン ポリシー ファイルを取得する要求が、69.171 以外の IP アドレスから応答された場合です。 .241.10 ポリシー ファイルを終了するゼロ バイトがサーバーからの応答にありません (例: 173.252.107.17:5222)。Wireshark によると、フローは次のようになります。
リクエスト:
<policy-file-request/>
\000
応答:
<allow-access-from domain=\"*\" to-ports=\"5222\"/>
Adobe の推奨事項によると、「サーバーはポリシー ファイルを終了するためにヌル バイトを送信する必要があり、その後接続を閉じる可能性があります。サーバーが接続を閉じない場合、Flash Player または AIR は終了ヌル バイトを受信したときに接続を閉じます。」
前提: その結果、Flash Player はポリシー ファイルが受信されていないと見なし、Facebook チャットへの xmpp ログインを処理しません。
仮定が正しければ、Facebook のバグのように見えます。
どんな助けでも大歓迎です、ありがとう。