兼容新抖音小程序
This commit is contained in:
@@ -9,6 +9,7 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
"strings"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -30,15 +31,16 @@ func init() {
|
||||
|
||||
func (a *TiktopMiniAuther) VerifySecret(dummy, code string) (authBindEx *auth2.AuthBindEx, err error) {
|
||||
globals.SugarLogger.Debugf("toktok mini VerifySecret jsCode:%s", code)
|
||||
appID, code := weixin.SplitJsCode(code)
|
||||
appID, code := splitCode(code)
|
||||
globals.SugarLogger.Debug("检测数据生成结果============", appID)
|
||||
sessionInfo, err := getTikTokApp(appID).GetTiktokOauth(code)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
globals.SugarLogger.Debug("toktok mini VerifySecret sessionInfo:", sessionInfo)
|
||||
if err == nil {
|
||||
sessionKey := sessionInfo.Data.SessionKey
|
||||
if authBindEx, err = a.UnionFindAuthBind(AuthTypeTiktokMini, api.TiktokApi.GetAppID(), []string{AuthTypeTiktokMini}, sessionInfo.Data.OpenId, sessionInfo.Data.Unionid, sessionInfo); err == nil {
|
||||
authBindEx.UserData = sessionKey
|
||||
}
|
||||
sessionKey := sessionInfo.Data.SessionKey
|
||||
if authBindEx, err = a.UnionFindAuthBind(AuthTypeTiktokMini, api.TiktokApi.GetAppID(), []string{AuthTypeTiktokMini}, sessionInfo.Data.OpenId, sessionInfo.Data.Unionid, sessionInfo); err == nil {
|
||||
authBindEx.UserData = sessionKey
|
||||
}
|
||||
return authBindEx, err
|
||||
}
|
||||
@@ -97,3 +99,13 @@ func getTikTokApp(appID string) (TikTokMini *tiktok.API) {
|
||||
}
|
||||
return TikTokMini
|
||||
}
|
||||
func splitCode(code string) (appID, realCode string) {
|
||||
str := strings.Split(code, "&")
|
||||
if len(str) == 2 {
|
||||
appID = str[1]
|
||||
realCode = str[0]
|
||||
} else {
|
||||
globals.SugarLogger.Warnf("splitCode abnormal code:%s", code)
|
||||
}
|
||||
return appID, realCode
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user