Unity Personal --- используйте библиотеку SocketIOClient для подключения к серверу node.js socket.io (NEWEST VERSION) - PullRequest
0 голосов
/ 23 января 2019

Я пытаюсь просто подключиться к ЛЮБОМУ типу сервера сокетов с Unity Personal Edition (желательно с собственной поддержкой WebSocket, но я не уверен, возможно ли это в проигрывателе WebGL с версией Unity Free, дайте мне знать, если естьЛЮБОЙ обходной путь, хотя).

ТАК В настоящее время я пытаюсь просто подключиться к серверу socket.io, работающему на node.js, вот код для сервера (работает ОТЛИЧНО, если я подключаюсь на клиенте JavaScript):

 var http = require("http");
    server = http.createServer((req,res) => {
        res.write("<b>Welcome</b>");
        res.end();
    });

server.listen(8000, () => {
   console.log("doin it"); 
});

var io = require("socket.io")(server);
io.on("connection", (sock) => {
   console.log("WOW can't believe it"); 
});

Так что теперь часть Unity: я искал в Интернете нужную библиотеку и нашел это: https://github.com/NetEase/UnitySocketIO однако, когда я пытаюсь подключиться, я получаю ошибку в единстве:

Error initializing handshake with http://localhost:8000/

вот мой код единства:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class main : MonoBehaviour {

    // Use this for initialization
    void Start () {
        print("testing?");
        var cli  = new SocketIOClient.Client("http://localhost:8000");
        cli.On("connect", (fn) =>
        {
            print("did I connect?");
        });
        cli.Error += (sender, e) => {
            print(e.Message.ToString());
        };
        cli.Message += onsend;
        cli.Connect();
        cli.Send("hi?");
        print("tried?");
        cli.Close();


    }
    void onopen(object sender, SocketIOClient.MessageEventArgs e)
    {
        print(e.Message);
    }
    void onsend(object sender, SocketIOClient.MessageEventArgs e)
    {
        print(e.Message);
    }
    // Update is called once per frame
    void Update () {

    }
}

на stackoverflow был ответ на проблему путем понижения socket.io до 0.9.x, но я не хочу делатьтот.

Кто-нибудь знает, как просто подключиться к серверу socketIO с БЕСПЛАТНОЙ версией Unity?Если бы вообще была доступна какая-либо другая библиотека, это было бы замечательно, я искал здесь форумы и ничего не мог найти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...