ee23102d
zhangqijia
支持mongo, grpc接服务器
|
1
2
3
4
5
|
package actions
import (
"context"
"errors"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
6
|
"google.golang.org/grpc/metadata"
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
7
|
"google.golang.org/protobuf/types/known/emptypb"
|
f7f4beb5
zhangqijia
新增grpc平滑关闭,修复crea...
|
8
|
"pro2d/conf"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
9
10
11
|
"pro2d/models"
"pro2d/protos/pb"
"pro2d/utils"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
12
13
|
)
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
14
|
func (s *GameServer) HeartBeatHandler(ctx context.Context, empty *emptypb.Empty) (*pb.HeartRsp, error) {
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
15
16
|
utils.Sugar.Debugf("HeartBeatHandler被调用!!!")
//获取元数据信息
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
17
|
_,ok := metadata.FromIncomingContext(ctx)
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
18
19
20
|
if !ok {
return nil,errors.New("未传输token")
}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
21
|
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
22
|
return &pb.HeartRsp{
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
23
|
Code: 0,
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
24
25
26
|
}, nil
}
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
27
|
func (s *GameServer) CreateRoleHandler(ctx context.Context, in *pb.LoginReq) (*pb.RoleRsp, error) {
|
1b1ad555
zhangqijia
tls测试代码
|
28
29
|
uid := ctx.Value("uid").(string)
ok, role := models.RoleExistByUid(uid)
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
30
|
if !ok {
|
f7f4beb5
zhangqijia
新增grpc平滑关闭,修复crea...
|
31
|
role = models.NewRole(conf.SnowFlack.NextVal())
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
32
|
role.Role.Device = in.Device
|
1b1ad555
zhangqijia
tls测试代码
|
33
|
role.Role.Uid = uid
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
34
|
role.Create()
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
35
36
|
}
return &pb.RoleRsp{
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
37
|
Code: 0,
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
38
39
40
41
|
Role: role.Role,
}, nil
}
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
42
|
func (s *GameServer) LoginHandler(ctx context.Context, in *pb.LoginReq) (*pb.RoleRsp, error) {
|
1b1ad555
zhangqijia
tls测试代码
|
43
44
|
uid := ctx.Value("uid").(string)
ok, role := models.RoleExistByUid(uid)
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
45
46
|
if !ok {
return &pb.RoleRsp{
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
47
|
Code: 1,
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
48
49
50
|
}, nil
}
return &pb.RoleRsp{
|
563acaf7
zhangqijia
在拦截器中认证jwt
|
51
|
Code: 0,
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
52
|
Role: role.Role,
|
eb417b0b
zhangqijia
reactor mongo
|
53
|
Hero: models.GetHeros(role.Heros),
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
54
55
|
}, nil
}
|