避免"破坏nonsocket.io升级"错误

Dee*_*pak 3 dojo websocket node.js socket.io

我正在尝试创建一个基于的服务器,但每当我使用dojo通过客户端连接它时,它会向我显示以下错误:

    debug - destroying non-socket.io upgrade
Run Code Online (Sandbox Code Playgroud)

这是我的服务器代码

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);
Run Code Online (Sandbox Code Playgroud)

这是我的客户端代码

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);
    });
});
Run Code Online (Sandbox Code Playgroud)

请帮我.

xec*_*ute 8

在socketio服务器配置上将"destroy upgrade"设置为false将解决此问题.

  • 当我将`destroy upgrade`切换为false时,它确实删除了该消息,但我似乎仍然无法连接到我的服务器.我甚至使用WebSockets echo页面来测试,可能在这里做错了. (2认同)