39 lines
1.2 KiB
C#
39 lines
1.2 KiB
C#
using WebSocketSharp;
|
|
using WebSocketSharp.Server;
|
|
using UnityEngine;
|
|
using System;
|
|
|
|
/// <summary>
|
|
/// 自定义 WebSocket 行为类,用于处理客户端连接、消息接收和断开。
|
|
/// </summary>
|
|
public class CustomWebSocketBehavior : WebSocketBehavior
|
|
{
|
|
public int number=0;
|
|
// 定义一个委托和事件,用于通知接收到的消息
|
|
public event Action<string> OnMessageReceived;
|
|
|
|
// 事件:客户端连接时触发
|
|
protected override void OnOpen()
|
|
{
|
|
Debug.Log("客户端已连接。");
|
|
//WebSocketServerManager.Instance.number++;
|
|
}
|
|
|
|
// 事件:客户端发送消息时触发
|
|
protected override void OnMessage(MessageEventArgs e)
|
|
{
|
|
// 打印接收到的原始 JSON 消息
|
|
Debug.Log("接收到客户端发送的数据: " + e.Data);
|
|
|
|
// 触发 OnMessageReceived 事件,将消息通知给 WebSocketServerManager
|
|
OnMessageReceived?.Invoke(e.Data);
|
|
}
|
|
|
|
// 事件:客户端断开连接时触发
|
|
protected override void OnClose(CloseEventArgs e)
|
|
{
|
|
Debug.Log("客户端已断开连接。原因: " + e.Reason);
|
|
// WebSocketServerManager.Instance.number--;
|
|
}
|
|
}
|