我正在使用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客户端连接它,服务器端代码可以正常工作。任何人都有运气使用它连接到socket.io服务器?
谢谢!
答案 0 :(得分:1)
RikkusRukkus:如果您正在使用socket.io 1.0(5月28日发布),请尝试切换到0.9.x.链接的仓库最后一次更新于4月11日。 1.0在引擎盖下有重大变化,因此客户端库可能不可互换。