Может кто то знать про такую проблему... Не удается подключится к сокету на своем сервере...
Спасибо всем откликнувшимся!
Сначала покажу ошибку
Код:
Error #2044: Unhandled securityError:. text=Error #2048: Security sandbox violation: https://pp.vk.me/c307509/u152812740/2e0c7dbd32f6c0.zip cannot load data from http://88.198.13.155:3003/socket.io/1/?time=1367423137699.
at com.pnwrain.flashsocket::FlashSocket()
at com.netease.pomelo::Client/init()
at ru.mamoyan.azo.server::Socket()
at ru.mamoyan.azo::AZO$/connect()
at Main/init()
at net.flashpunk::Engine/onStage()
at flash.display::DisplayObjectContainer/addChild()
at Preloader/startup()
at Preloader/checkFrame()
На клиентской стороне библиотека
https://github.com/stokegames/pomelo...melo/Client.as основанная на WebSocket SocketIO
На сервере у себя поставил nodejs и запустил скрипты с слушателями:
на порту 3000 - основной серверный код
на порту 843 - код который возвращает crossdomain
Скрипт Crossdomain
Код AS3:
var server = require('net').createServer(function(stream){
console.log('connected'); // <-- log —---------
stream.on('error', function (extension) {
console.log('policy.socket.error');
});
stream.on('data',function(){
stream.write('<?xml version="1.0"?>');
stream.write('<cross-domain-policy>');
stream.write('<allow-access-from domain="*" to-ports="*" />');
stream.write('<allow-http-request-headers-from domain="*"/>');
stream.write('<allow-access-from domain="*" to-ports="843"/>');
stream.write('<allow-access-from domain="*" to-ports="3000"/>');
stream.write('</cross-domain-policy>\0');
stream.end();
});
});
server.listen(843, '88.198.13.155');
Код клиента на AS3
Код AS3:
Security.loadPolicyFile("http://88.198.13.155:843");
Security.loadPolicyFile("xmlsocket://88.198.13.155:843");
client = new Client();
client.init('88.198.13.155', 3000,null, function():void{
client.addEventListener(ClientEvent.IO_ERROR,onError);
client.addEventListener(ClientEvent.SECURITY_ERROR,onError);
client.addEventListener(ClientEvent.MESSAGE,onMessage);
dispatchEvent(new Event(Event.CONNECT));
trace("Успех!");// -< Вот этого не происходит!! Так как не считывает crossdomain
});