2017-10-14 1 views
0

Je suis nouveau à C# et à l'unité. Je suis en train d'envoyer une simple chaîne au serveur en utilisant Socket.IO:Socket.IO dans unity5, C# - comment émettre une chaîne ou un objet?

socket.Emit("collision", "Surface") Il ne fonctionne pas, je reçois:

how to send/emit string trough socket io in unity?

J'ai essayé un tas de choses, ce qui suit code fonctionne uniquement avec des chaînes comme des nombres:

var dataToSend = new JSONObject(); 
dataToSend["colider"] = new JSONObject("2"); // this works.. 
socket.Emit("collision", dataToSend); 

ce qui suit donne null - troisième dans l'image ci-dessous ..

var dataToSend = new JSONObject(); 
dataToSend["colider"] = new JSONObject("Surface"); 
socket.Emit("collision", dataToSend); 

Thig donne objet vide { }

var dataToSend = new JSONObject(); 
dataToSend["colider"] = new JSONObject(JsonUtility.ToJson("Surface")); 
socket.Emit("collision", dataToSend); 

Je reçois:

works for number as string but not for string as string.png

Alors, comment puis-je envoyer/émettre cette chaîne "Surface" au serveur? Pourquoi est-ce si difficile, c'est juste une simple chaîne ..?! merci :)

Répondre

1

Je l'ai trouvé: socket.Emit("collision", JSONObject.CreateStringObject("Surface"));

Il y a un tas de fonctions plus spécialisées - l'API peut être trouvé à l'intérieur SocketIO/JSONObject/JSONObject.cs - pour le Socket.IO library downloaded from assets store