Отправка данных с флэш-памяти на сервер node.js с помощью socket.io
У меня есть простой сервер на основе socket.io в node.js, который слушает сокет в порту 81 (например). У меня нет проблем с подключением и передачей данных между клиентами, написанными на Javascript, но после многих попыток я могузаставить мое Flash-приложение подключаться к серверу и передавать на него данные (я нашел несколько примеров в Интернете - но все они основаны на гибких настройках и используют классы, которые не 'т части основных библиотек AS3)
когда я'я пытаюсь подключиться к сокету с помощью XMLSocket - я получаю ошибку нарушения изолированной программной среды безопасности - я знаю, что мне нужно загрузить файл политики (который должен быть доступен с помощью socket.io), но я не могу 'не удается это сделать
это мой флэш-код:
Security.loadPolicyFile("http://127.0.0.1:81/crossdomain.xml");
socket = new XMLSocket("127.0.0.1", 81);
socket.addEventListener(Event.CONNECT, onConnect);
socket.addEventListener(IOErrorEvent.IO_ERROR, onError);
socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityEvent);
socket.addEventListener(DataEvent.DATA, onData);
и код на стороне сервера
var app = require('http').createServer(function (req, res) {...})
, io = require('socket.io').listen(app, { log: true })
, fs = require('fs')
app.listen(81);
io.sockets.on('connection', function (socket) {
console.log("connection "+socket.id);
socket.on("message",function(data){
console.log("data: "+data);
});
socket.on("data",function(d){
console.log('data from flash: ',d);
});
socket.on('disconnect', function (socket) {
console.log("disconnect");
});
});
и мой crossdomain.xml:
Большое спасибо за уделенное время!