refactor(socket): 统一使用 gnet.Conn 替代自定义 Conn 结构体

- 将 logic/controller 和 logic/service/player 中的 *player.Conn 替换为 gnet.Conn
- 移除 player.Conn 结构体及相关封装逻辑
- 调整 SendPack 方法至 Player 实体,直接操作 gnet.Conn 发送数据
- 增加 Mu 锁保护并发写入,确保 WebSocket 和 TCP 连接安全性
- 更新 ServerEvent.go 中跨域标记设置位置
```
This commit is contained in:
2025-10-14 03:07:55 +08:00
parent 1cbdb8f22a
commit 600fc29cbd
10 changed files with 58 additions and 63 deletions

View File

@@ -17,6 +17,7 @@ import (
"github.com/gogf/gf/v2/os/glog"
"github.com/jinzhu/copier"
"github.com/panjf2000/gnet/v2"
)
func IsToday(t time.Time) bool {
@@ -30,7 +31,7 @@ func IsToday(t time.Time) bool {
}
// 处理命令: 1001
func (h *Controller) Login(data *user.MAIN_LOGIN_IN, c *player.Conn) (result *user.LoginMSInfo, err errorcode.ErrorCode) { //这个时候player应该是空的
func (h *Controller) Login(data *user.MAIN_LOGIN_IN, c gnet.Conn) (result *user.LoginMSInfo, err errorcode.ErrorCode) { //这个时候player应该是空的
if tt := data.CheakSession(); tt { //说明sid正确
h.RPCClient.Kick(data.Head.UserID) //先踢人