代码拉取完成,页面将自动刷新
package app
import (
"fmt"
"gitee.com/liuxuezhan/mylib/Protocol"
"gitee.com/liuxuezhan/mylib/conf/ConfigServer"
. "gitee.com/liuxuezhan/mylib/log"
"gitee.com/liuxuezhan/mylib/rsa-go"
"time"
)
func C_Reconnect(message MPB.Message, ctx interface{}) {
req := message.(*MPB.C_Reconnect)
sess := ctx.(*Session)
go func() {
// 认证
ec := (MPB.RetType_OK)
func() {
if sess.GetId() == uint64(req.SessionKey) {
Log.Warning("[reconnect] save session id")
ec = MPB.RetType_Failed
return
}
sign := rsa_go.GetMd5Hash(fmt.Sprintf("%d%s%s", req.SessionKey, req.UserId, ConfigServer.GetConf("auth", "token")))
if req.SessionToken != sign {
Log.Warning("[reconnect] sign err")
ec = MPB.RetType_Failed
return
}
user := Center_GetUserInfoById(req.UserId)
if user == nil {
ec = MPB.RetType_Failed
return
}
// 检查是否封号
if user.BanTs.After(time.Now()) {
ec = MPB.RetType_Login_UserBanned
return
}
// then -> reconnect player: 通知到 GS
ec = sess.ReconnectPlayer(uint64(req.SessionKey), &MPB.GW_UserReconnect{
Sid: sess.GetId(),
UserId: user.UserId,
})
}()
sess.SendMsg(&MPB.GW_Reconnect_R{
ErrorCode: ec,
})
}()
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。