You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When the event data contains ", " the parse fails. Because is looking for ", " to split it and get eventName and evenData.
If I set on Socket.cs in line 322
pkt.body = "["gameFinished",{"message":"Good job!, play in the new tournament"}]";
Will cause Warning message: gameFinished",{"message":"Good job event doesn't have a handler, because is taking gameFinished",{"message":"Good job as the eventName
Most robust way to separate even name and data should be implemented.
The text was updated successfully, but these errors were encountered:
Event body parsed poorly (say that 10 times fast) the way I figure ... testing for a comma followed by a space was a way to prevent the data string from having a leading space ... why not keep it simple and trim off any leading spaces and leave the data string properly intact (i mean comma space is commonly used!) here is a snippet;
case SocketPacketTypes.EVENT:
if (!pkt.HasBody) {
Debug.LogWarningFormat("{0} has no body(data)", pkt.ToString());
return;
}
var seperateIndex = pkt.body.IndexOf(',');
var seperatorLen = 1;
var eventName = pkt.body.Substring(2, seperateIndex - 3);
if (!_handlers.ContainsKey(eventName)) {
Debug.LogWarningFormat("{0} event doesn't have a handler", eventName);
break;
}
var data = pkt.body.Substring(seperateIndex + seperatorLen, pkt.body.Length - seperateIndex - seperatorLen - 1).TrimStart();
_handlers[eventName](data);
break;
additionally I'm running this on ... socket.io 2.1.1 and unity 2017.4.14f1 #2 Support socket.io v2.0.2
When the event data contains ", " the parse fails. Because is looking for ", " to split it and get eventName and evenData.
If I set on Socket.cs in line 322
pkt.body = "["gameFinished",{"message":"Good job!, play in the new tournament"}]";
Will cause Warning message: gameFinished",{"message":"Good job event doesn't have a handler, because is taking gameFinished",{"message":"Good job as the eventName
Most robust way to separate even name and data should be implemented.
The text was updated successfully, but these errors were encountered: