🌐 Net 网络模块
适用于 Unity 的网络模块,包含网络检测、接口请求、Token 鉴权、服务器时间同步等功能。模块职责清晰、易扩展,使用前需引入通用模块。
📦 模块概览
| 模块 | 功能描述 |
|---|---|
NetChecker |
📶 检测网络是否可用,支持 Ping / HTTP 检查 |
NetCore<T> |
📡 网络请求基类,支持加密和 Token 自动处理(需继承) |
TokenManager |
🔐 Token 缓存 / 自动刷新 / 登录回退处理 |
ServerClock |
🕒 同步服务器时间,避免设备本地误差 |
WebSocket 模块 |
依赖 nativewebsocket 插件 |
✅ 使用示例
1. 网络检测
StartCoroutine(NetChecker.Instance.WaitUntilNetworkConnected(10, 1f, success => {
if (success) Debug.Log("✅ 网络可用");
}));
2. 实现你的请求类(必须继承 NetCore)
public class NetKit : NetCore<NetKit> {
// 详情参考此类
}
3. 发起接口请求(在子类中)
NetKit.Instance.Post<TrackData>("/event/incrN", trackData,
response => {
callback?.Invoke(response.IsSuccess, response.Data);
});
4. Token 获取(自动缓存)
yield return TokenManager.Instance.GetToken(token => {
Debug.Log("当前 Token:" + token);
});
5. 服务器时间同步
ServerClock.Init(serverUnixTime);
var now = ServerClock.GetCurrentServerTime();