package oauth import ( "context" "dashoo.cn/common_definition/comm_def" "dashoo.cn/micro_libary/micro_srv" "github.com/gogf/gf/frame/g" "github.com/gogf/gf/os/glog" "github.com/gogf/gf/util/gconv" ) type OssHandler struct{} // CallBack 单点登录 func (c *OssHandler) CallBack(ctx context.Context, req map[string]string, rsp *comm_def.CommonMsg) error { // 获取租户码 tenant, err := micro_srv.GetTenant(ctx) if err != nil { return err } glog.Info("单点登录req", req) server := NewOssService() res, err := server.GetAccessToken(ctx, req["code"]) if err != nil { return err } glog.Info(res) UserInfoRes, err := server.GetUserInfo(ctx, gconv.String(res["access_token"])) if err != nil { return err } userInfo, err := server.GetToken(ctx, UserInfoRes, tenant) rsp.Data = userInfo rsp.Code = 200 rsp.Msg = "" return nil } // CallBack 心跳检测 func (c *OssHandler) GetCheckiam(ctx context.Context, req map[string]string, rsp *comm_def.CommonMsg) error { glog.Info("单点登录req", req) server := NewOssService() res, err := server.GetCheckiam(ctx) if err != nil { return err } rsp.Code = 200 rsp.Msg = "" rsp.Data = g.Map{"response": res} glog.Info(res) return nil } func (c *OssHandler) GetToken(ctx context.Context, req map[string]string, rsp *comm_def.CommonMsg) error { // 获取租户码 tenant, err := micro_srv.GetTenant(ctx) if err != nil { return err } glog.Info("单点登录req", req) server := NewOssService() var UserInfoRes map[string]interface{} userInfo, err := server.GetToken(ctx, UserInfoRes, tenant) rsp.Data = userInfo rsp.Code = 200 rsp.Msg = "" return nil }