From 70c9862403e8e9281df83994bd6cdb18e308043c Mon Sep 17 00:00:00 2001 From: gazebo Date: Wed, 7 Aug 2019 18:34:36 +0800 Subject: [PATCH] - fix bug in weixin.VerifySecret --- business/auth2/authprovider/weixin/weixin.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/business/auth2/authprovider/weixin/weixin.go b/business/auth2/authprovider/weixin/weixin.go index 0786e86ed..98f3a12a9 100644 --- a/business/auth2/authprovider/weixin/weixin.go +++ b/business/auth2/authprovider/weixin/weixin.go @@ -3,6 +3,7 @@ package weixin import ( "errors" + "git.rosy.net.cn/baseapi/platformapi/weixinapi" "git.rosy.net.cn/jx-callback/business/auth2" "git.rosy.net.cn/jx-callback/business/auth2/authprovider" "git.rosy.net.cn/jx-callback/globals" @@ -44,9 +45,9 @@ func init() { func (a *Auther) VerifySecret(state, code string) (authBindEx *auth2.AuthBindEx, err error) { globals.SugarLogger.Debugf("weixin VerifySecret code:%s", code) if state == "" { - token, err2 := api.WeixinPageAPI.SNSRetrieveToken(code) + token, err2 := a.getAPI().SNSRetrieveToken(code) if err = err2; err == nil { - wxUserinfo, err2 := api.WeixinPageAPI.SNSGetUserInfo(token.AccessToken, token.OpenID) + wxUserinfo, err2 := a.getAPI().SNSGetUserInfo(token.AccessToken, token.OpenID) if err = err2; err == nil { if authBindEx, err = a.UnionFindAuthBind(a.authType, []string{AuthTypeWeixin, AuthTypeMP, AuthTypeMini}, wxUserinfo.OpenID, wxUserinfo.UnionID, wxUserinfo); err == nil { authBindEx.UserHint = &auth2.UserBasic{ @@ -60,3 +61,10 @@ func (a *Auther) VerifySecret(state, code string) (authBindEx *auth2.AuthBindEx, } return authBindEx, err } + +func (a *Auther) getAPI() *weixinapi.API { + if a.authType == AuthTypeWeixin { + return api.WeixinPageAPI + } + return api.WeixinAPI +}