Tag: actionscript 3

是否有可能使用闪光灯sockets和networkingsockets同时socketsio?

现在我一直在为此苦苦挣扎,试图在各处find信息,但是我解决不了。 基本上,我有一个Flash客户端应用程序和一个浏览器 – 基于铬的应用程序连接到一个套接字io – nodejs服务实例。 如您所知,Chrome浏览器可以通过Websocket工作,而我的Flash应用程序则可以通过Flash插槽工作。 一切工作之间的铬和节点之间,但是当我从我的Flash应用程序进行任何交互,降级连接types为闪存套接字而不是Web套接字使Chrome Web应用程序无法读取服务器,因为服务器开始发出消息使用flashsockets。 基本上,当我从Flash做任何交互时,Chrome不再收到任何信息。 你知道有什么方法通过闪存节点保持服务信息,但也保证节点 – 铬通过websockets进行通信? 我已经尝试了推荐的库与socket io连接,你可以在socket io网站上find它; 这是一个https://github.com/simb/FlashSocket.IO 另外我试图在AS3中使用一个使用websockets的库,但似乎无法与socket.io正确通信; 这是一个https://github.com/y8/websocket-as 。 尝试连接时输出的消息套接字是“debug – 销毁nonsocket.io升级” 这里有一些debugging代码,显示flashsockets和websocket,这是我的两个客户端应用程序试图连接到相同的套接字io服务器: https://gist.github.com/4637617 非常感谢你的帮助!

Web套接字和Flash套接字客户端连接到一个Node.js

我有问题连接Flash客户端到Node.js服务器。 小故事 : 我第一次构build一个应该由Web客户端(WebSocket)以及Flash客户端(Socket)使用的Node.js服务器。 当然,networking客户端就像一个魅力,但我无法克服闪存。 我得到SECURITY_ERROR。 经过一天的研究,我认为这是因为政策文件没有被加载。 想法(primus在engine.io顶部)? 长篇小说 : 我使用Primus,因为我想我会需要它,因为我有networkingsockets和闪光灯sockets来处理。 不确定这是否准确? 🙂 我使用Engine.io作为“变换器/传输器” – 图层使用的主要框架。 我不会讨论标准的Web客户端(使用Chrome和primus-client),因为它很容易设置。 我在AS3中使用简单和标准的套接字: _socket = new Socket(); _socket.addEventListener(Event.CONNECT, onSocketConnect); //… _socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError); _socket.addEventListener(IOErrorEvent.IO_ERROR, onIOError); _socket.connect('localhost', '1337); 在Flash IDE中构build它时,它将转到onSocketConnect函数,但是如果我尝试向onSocketConnect写入任何内容,则会断开连接。 如果我从Web浏览器运行这个,我进入onSecurityError方法。 我必须说,我没有得到任何在节点控制台的痕迹! primus.on('connection', function connection(spark) { console.log('new connection'); // never gets logged! 据我所知,当策略文件出现错误时会引发安全错误,所以我开始寻找解决scheme。 我已经在线阅读了很多东西,最常见的解决scheme是简单的使用socket.io ,所以叫做FlashSocket.IO 。 我尝试过实现它,但它太老了,有些代码是一种失踪,我终于从hurlant图书馆得到一些错误 – 我无法得到它的工作。 我还看到一些名为policy节点包,它运行单独的服务器到服务器的策略文件。 我尝试在其中添加一个flashsocket transport数组 […]

node.js和ActionScript通用的序列化格式?

我的一些朋友正在devise一款游戏,我正在通过实现游戏的后端服务器来帮助他们。 这个游戏是用Flash编写的,我打算在node.js中开发服务器,因为(a)它是学习node.js的一个很酷的项目,(b)它很快,这对于游戏很重要。 服务器的架构是基于服务器和客户端之间发送的消息(有点像Minecraft的服务器协议)。 我到目前为止的消息格式是一个字节(数据包types),两个字节(消息长度)和许多字节(消息数据,这是键值对的映射)。 问题是,我真的不想开发自己的序列化格式(因为虽然我可能可以实现,但与使用现有解决scheme相比,这将是一个痛苦)。 不幸的是,我在为消息数据序列化格式find一个好的候选者时遇到了问题。 ActionScript自己的远程格式可能工作,但我不喜欢它太多。 JSON在node.js(很明显)和ActionScript中都有支持,但它也是文本的,我更喜欢二进制来提高速度。 MessagePack看起来很不错,但我找不到ActionScript实现。 (谷歌代码上有一个名为as3-msgpack,但我得到奇怪的错误,无法访问它。) BSON有一个ActionScript实现,除了MongoDB库之外,没有node.js的支持(我打算使用Redis)。 那么,任何人都可以提供我可能错过的其他序列化格式吗? 或者我应该坚持其中的一个(或滚动我自己的)?

使用socket.io将数据从闪存发送到node.js服务器

我在node.js中有一个简单的基于socket.io的服务器,它侦听81端口的套接字(例如)。我用Javascript编写的客户端之间连接和传递数据没有问题。但经过很多尝试,我无法得到我的Flash应用程序连接到服务器并将数据传递给它(我在网上发现了一些例子 – 但所有这些都是基于Flex的,并且使用的类不是基本的AS3库的一部分) 当我试图连接到使用XMLSocket的套接字 – 我得到安全沙箱违规错误 – 我知道我需要加载策略文件(这假设可用使用socket.io),但我不能设法做它 这是我的flash代码: 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){ […]

用于Socket.io的AS3库

我在我的项目中使用node.js + socket.io,而最让我困扰的问题之一就是缺less正常的AS3库,而不能使用socket.io来处理as3和node.js之间的通信。 在我上一个项目中,我使用了https://github.com/simb/FlashSocket.IO这个库,但是我必须回滚到node.js v0.8.25。 所以 – 要求: 适用于node.js v0.10.x 适用于socket.io v0.9.x 安全连接支持(wss) 有一个以上的图书馆可能会更好,也许有人知道更好的图书馆? 谢谢!