Вопрос по socket.io, dojo, node.js, websocket – Избегайте ошибки «уничтожение не-socket.io обновления»

3

Я пытаюсь сделать сервер, но всякий раз, когда я подключаюсь к нему через клиент с помощью dojo, он показывает мне эту ошибку:

<code>    debug - destroying non-socket.io upgrade
</code>

Вот мой код сервера

<code>var express = require("express");
var io = require("socket.io");
server= express.createServer();
var server_socket = io.listen(server);

server_socket.sockets.on("connection",function(socket)
{
    console.log("connection established");
    socket.emit("message", message);
});

server.listen(8080);
</code>

А вот и мой код клиента

<code>require(["dojox/socket"], function (socket)
{
    var args, ws = typeof WebSocket != "undefined";
    var _socket = dojox.socket(args = {
        url: ws ? "ws://localhost:8080/" : "http://localhost:8080",
        headers:{
        "Content-Type":"application/x-www-urlencoded"
         },
        transport: function(args, message){
          args.content = message; // use URL-encoding to send the message
                                  // instead of a raw body
          dojo.xhrPost(args);
         }
    }); 
    websocket = dojox.socket.Reconnect(_socket);
    websocket.on("message",function(data)
    {
       console.log(data);
    });
});
</code>

Пожалуйста, помогите мне.

Ваш Ответ

2   ответа
1

Socket.io является как серверной, так и клиентской библиотекой для node.js. Я предполагаю, что клиент веб-сокета Dojo не совместим напрямую с сервером socket.io. Я бы предложил просто использоватьклиент socket.io для соединений, в противном случае вам, вероятно, придется изменить библиотеку веб-сокетов Dojo, что, вероятно, будет затруднительно.

8

Настройка & quot; уничтожить обновление & quot; Значение false в конфигурации сервера socketio решит эту проблему.

Это действительно удалило сообщение, когда я переключилdestroy upgrade в false, но я все еще не могу подключиться к своему серверу. Я даже использую эхо-страницу WebSockets для тестирования, возможно, здесь что-то не так.

Похожие вопросы