1 Star 0 Fork 0

lollipop-xyz/g7-keyauth

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
impl.go 1.39 KB
一键复制 编辑 原始数据 按行查看 历史
xy 提交于 2022-11-03 11:19 . 颁发Token
package impl
import (
"context"
"gitee.com/lollipop-xyz/g7-keyauth/apps/token"
"gitee.com/lollipop-xyz/g7-keyauth/apps/user"
"gitee.com/lollipop-xyz/g7-keyauth/conf"
"github.com/infraboard/mcube/app"
"github.com/infraboard/mcube/logger"
"github.com/infraboard/mcube/logger/zap"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"go.mongodb.org/mongo-driver/x/bsonx"
"google.golang.org/grpc"
)
var (
// Service 服务实例
svr = &impl{}
)
type impl struct {
col *mongo.Collection
log logger.Logger
token.UnimplementedServiceServer
user user.ServiceServer
}
func (s *impl) Config() error {
// 依赖MongoDB的DB对象
db, err := conf.C().Mongo.GetDB()
if err != nil {
return err
}
// 获取一个Collection对象, 通过Collection对象 来进行CRUD
s.col = db.Collection(s.Name())
s.log = zap.L().Named(s.Name())
s.user = app.GetGrpcApp(user.AppName).(user.ServiceServer)
// 创建索引
indexs := []mongo.IndexModel{
{
Keys: bsonx.Doc{
{Key: "refresh_token", Value: bsonx.Int32(-1)},
},
Options: options.Index().SetUnique(true),
},
}
_, err = s.col.Indexes().CreateMany(context.Background(), indexs)
if err != nil {
return err
}
return nil
}
func (s *impl) Name() string {
return token.AppName
}
func (s *impl) Registry(server *grpc.Server) {
token.RegisterServiceServer(server, svr)
}
func init() {
app.RegistryGrpcApp(svr)
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lollipop-xyz/g7-keyauth.git
git@gitee.com:lollipop-xyz/g7-keyauth.git
lollipop-xyz
g7-keyauth
g7-keyauth
v0.0.8

搜索帮助