refactor(pack): 重构组包逻辑
- 移除 common/core/pack.go 文件 - 在 TomeeHeader 结构体中添加 Pack 方法实现组包功能 - 更新 Player 结构体和相关方法,使用 Conn 包装 gnet.Conn - 修改控制器和服务中的组包调用,使用新的 Pack 方法 - 优化部分代码结构,提高可维护性
This commit is contained in:
@@ -14,13 +14,10 @@ import (
|
||||
"fmt"
|
||||
"reflect"
|
||||
|
||||
"github.com/gobwas/ws"
|
||||
"github.com/gobwas/ws/wsutil"
|
||||
"github.com/gogf/gf/v2/os/gcmd"
|
||||
"github.com/gogf/gf/v2/os/glog"
|
||||
"github.com/gogf/gf/v2/util/gconv"
|
||||
"github.com/lunixbochs/struc"
|
||||
"github.com/panjf2000/gnet/pkg/logging"
|
||||
"github.com/panjf2000/gnet/v2"
|
||||
)
|
||||
|
||||
@@ -202,21 +199,8 @@ func Recv(c gnet.Conn, data handler.TomeeHeader) {
|
||||
}
|
||||
|
||||
ret := cmdlister.Call(params)
|
||||
//return core.Pack(data.Handler.UserID, data.Handler.CMD, t1, 0)
|
||||
//core.Pack(c, cmd cmd.EnumCommandID, data any, iserror uint32)
|
||||
if c.Context().(*entity.ClientData).Getwsmsg().Upgraded {
|
||||
// This is the echo server
|
||||
err = wsutil.WriteServerMessage(c, ws.OpBinary, ret[0].Interface().([]byte))
|
||||
if err != nil {
|
||||
logging.Infof("conn[%v] [err=%v]", c.RemoteAddr().String(), err.Error())
|
||||
return
|
||||
}
|
||||
} else {
|
||||
|
||||
_, err = c.Write(ret[0].Interface().([]byte))
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
}
|
||||
}
|
||||
r := entity.Conn{c}
|
||||
r.SendPack(ret[0].Interface().([]byte))
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user