在websockets上发送移相器图像

时间:2018-01-03 11:21:02

标签: javascript typescript websocket socket.io phaser-framework

所以基本上我想通过websockets发送由phaser加载的图像。 (socket.io)然而,似乎图像中有一些递归/循环结构,因此我无法发送它(或将其转换为字符串)。

现在我想我已经找到问题发生的地步但我不知道如何避免它。

图片的部分结构: snippet out of the console in chrome

代码:

Game.prototype = {

preload: function(){
    let me = this;
    console.log("loading images...");
    me.game.load.image('dragon', '/dragon.png');
    me.game.load.image('kraken', '/kraken.png');
    me.game.load.image('godzilla', '/godzilla.png');
    me.game.load.image('alien', '/alien.png');
},

以某种方式可以通过这样的websockets发送图像,还是我必须从结构中获取图片的密钥并发送它?

修改 是通过获取密钥来实现的,无论如何我认为这是一个更好的解决方案。

1 个答案:

答案 0 :(得分:-1)

  1. 您应该先打开WebSocket(ws)。 ws促销将在同一TCP / IP连接上使用不同的模式(ws://)。使用开发控制台监视网络事务。

  2. Socket.io必须同时在WebSocket“ tube”的服务器和客户端上使用。引用第84页的“ Phaser多人游戏系统”,“ Socket.IO并非具有其他实时协议后备选项的WebSocket库。它是在其他实时协议之上的自定义实时传输协议实现。它的协议协商部分使支持标准WebSocket的客户端无法联系Socket.IO服务器。实现Socket.IO的客户端无法与基于非Socket.IO的WebSocket或Long Polling Comet服务器通信。因此,Socket.IO要求在客户端和服务器端都使用Socket.IO库。”