WebSocketプロトコルを使用してサーバーに接続しようとする単純なFlexアプリケーションを実装しました。 Flash Builder 4.6デバッガでアプリケーションを実行すると、すべて正常に動作します。だから、私は自分のサーバーにアプリケーションをインストールした後、しばらくしてError#2048を取得します。 #2048はセキュリティに関するエラーと思われます。Flex:WebSocketに接続するときのエラー#2048
サーバは、こののcrossdomain.xmlを提供しています。
<?xml version="1.0" encoding="UTF-8" ?>
<cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.adobe.com/xml/schemas/PolicyFileSocket.xsd">
<allow-access-from domain="*" to-ports="*" />
<site-control permitted-cross-domain-policies="master-only" />
</cross-domain-policy>
編集更新
:それは私がそのWebサーバーのログに見ることができます
Security.loadPolicyFile('http://myserver:8081/crossdomain.xml');
を呼び出すことによって提供されますがクライアントはそれをロードします。
FlexのWebSocket実装としてAS3WebSocketを使用しています。
これは私がのWebSocketオブジェクトを設定する方法です:ブラウザは
http://myserver:8081
でサーバーに接続
websocket = new WebSocket(url, "*", 'dummy', 5000);
// adding several event handler ...
websocket.connect();
URLパラメータは
ws://myserver:8081/data
なぜを保持していますそれは私のseではなく、Flash Builderでローカルに動作しますあなたは?私は何が欠けていますか?
どのポートがクロスドメインになっていますか。 –
Flexアプリケーションで実行される最初の行は、_Security.loadPolicyFile( 'httpaddressofmyserver:8081/crossdomain.xml'); _です。それはアプリからロードされています。それは私のWebサーバーのログで見ることができます。 –
ここに私の他のポストを参照してくださいhttp://stackoverflow.com/questions/7634266/open-swf-file-than-works-with-socket/7637329#7637329 –