- 修改端口配置:将 .vscode/launch.json 中的端口从 27777 改为 27000 - 优化会话管理:更新 session 包中的 GetSession 和 SaveSession 函数,使用新的 sessionprx 变量 - 调整登录逻辑:修改 login 控制器中的 Login 函数,优化会话验证流程 - 扩展服务器信息结构:在 CommendSvrInfo 结构中添加好友和黑名单信息字段 - 修复 GetSessionId 函数:改进错误处理,确保返回值的一致性 - 更新服务器配置:修改 ServerR.xml 中的 EmailLogin URL 为本地地址 - 其他 minor changes:删除了一些不必要的注释和打印语句
32 lines
897 B
Go
32 lines
897 B
Go
package login
|
||
|
||
import (
|
||
"blazing/common/data/session"
|
||
"blazing/common/socket/handler"
|
||
"encoding/hex"
|
||
"fmt"
|
||
)
|
||
|
||
// LoginSidInfo 登录携带的凭证结构体
|
||
type LoginSidInfo struct { //这里直接使用组合来实现将传入的原始头部数据和结构体参数序列化
|
||
Head handler.TomeeHeader `cmd:"1001" struc:"[0]pad"` //玩家登录
|
||
|
||
Sid []byte `struc:"[16]byte"` // 登录会话ID,固定长度16字节
|
||
// NotLogin uint32 `error="10001"|struc:"[0]pad"` //返回错误码 ,不序列化,仅作为错误码
|
||
// ErrorPassWord uint32 `struc:"[0]pad"`
|
||
}
|
||
|
||
func (l *LoginSidInfo) CheakSession() bool {
|
||
// tt, _ := cool.CacheManager.Keys(context.Background())
|
||
//g.Dump(tt)
|
||
t1 := hex.EncodeToString(l.Sid)
|
||
|
||
t, err := session.GetSession(t1)
|
||
if err != nil {
|
||
return false
|
||
}
|
||
fmt.Println("后端获取", t1, t, err)
|
||
|
||
return t == l.Head.UserID
|
||
}
|