Я использую socketIO на узле и подключаю его к внешнему интерфейсу, они работают нормально. Теперь я хочу продвинуться дальше
Я хочу, чтобы мои клиенты .net (UWP) общались с socketIO Нопроисходит что-то действительно странное
Сначала я проверил, и все работает нормально, во второй раз, когда я запускаю клиент. Он начал отправлять два или более сообщений, когда я отправляю только одно.И я понимаю, что если я сначала открою клиент .net, а затем сервер, этого не произойдет, но когда я выключил своих клиентов (пока сервер еще работал), эта ошибка начала происходить.
public sealed partial class StuffDetail : Page
{
Socket socket = IO.Socket("ws://localhost:8888");
ObservableCollection<SocketMessage> InCommingData { get; set; } = new ObservableCollection<SocketMessage>();
public StuffDetail()
{
this.InitializeComponent();
DisconnectState();
SetSocket();
ChatWindow.ItemsSource = InCommingData;
}
private void DisconnectState()
{
ReceivedText.Text = "Not Connect";
}
private void SetSocket()
{
socket.Connect();
ReceivedText.Text = "Connect Completed";
socket.On("chat", async (data) =>
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
var IncomeMess = JsonConvert.DeserializeObject<SocketMessage>(data.ToString());
InCommingData.Add(IncomeMess);
});
});
}
private void Send(object sender, RoutedEventArgs e)
{
var message = new SocketMessage()
{
message = MessTextBox.Text,
handle = "From Beta User"
};
socket.Emit("chat", JsonConvert.SerializeObject(message));
}
}