javascript - Unity3d和Sockets.IO不会握手

标签 javascript node.js unity-game-engine socket.io unityscript

我正在使用https://github.com/kaistseo/UnitySocketIO-WebSocketSharp使 Unity3D 能够与 Node.JS Socket.IO 服务器通信。但是,在握手过程中会出错

套接字错误:初始化与服务器握手时出错

客户端代码:

    SocketIOClient.Client socket;

// Use this for initialization
void Start () {
    socket = new SocketIOClient.Client("http://server:80/");
    socket.On("connect", (fn) => {
        Debug.Log ("connect - socket");

        Dictionary<string, string> args = new Dictionary<string, string>();
        args.Add("msg", "what's up?");
        socket.Emit("SEND", args);
    });
    socket.On("RECV", (data) => {
        Debug.Log (data.Json.ToJsonString());
    });
    socket.Error += (sender, e) => {
        Debug.Log ("socket Error: " + e.Message.ToString ());
    };
    socket.Connect();
}

在服务器端,

var express = require('express');
var app     = express();
var http = require('http').Server(app);
var io = require('socket.io');

serv = app.listen(port);                                        
var sio = io.listen(serv);
sio.on('connection', function(socket){
   console.log('a user connected');
});

如果我使用 Javascript sockets.io 客户端连接到服务器端代码,服务器端代码可以正常工作。有人能幸运地使用它连接到 sockets.io 服务器吗?

谢谢!

最佳答案

RikkusRukkus:如果您使用的是 socket.io 1.0(5 月 28 日发布),请尝试切换到 0.9.x。链接的存储库最后更新于 4 月 11 日。 1.0 在底层进行了重大更改,因此客户端库可能不可互换。

关于javascript - Unity3d和Sockets.IO不会握手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24187480/

相关文章:

javascript - 获取跨源请求的响应自定义 header

node.js - 从JavaScript客户端查询字符串查询

unity-game-engine - 卸载unity开发的app后PlayerPrefs还存在吗?

javascript - Bluebird 忘记返回警告丢失

c# - 游戏制作系统逻辑?

c# - Unity C# 数组 - 如何克隆

javascript - 如何获取相似名称的元素?查询

javascript - ng-disabled 每次单击按钮时都不会评估

javascript - 这个javascript闭包有什么区别?

javascript - 如何判断视频是否受版权保护? YouTube API v3