43 lines
1.1 KiB
Go
43 lines
1.1 KiB
Go
package alipay
|
|
|
|
import (
|
|
"git.rosy.net.cn/baseapi/platformapi/alipayapi"
|
|
"git.rosy.net.cn/jx-callback/business/auth2"
|
|
"git.rosy.net.cn/jx-callback/business/auth2/authprovider"
|
|
"git.rosy.net.cn/jx-callback/globals"
|
|
"git.rosy.net.cn/jx-callback/globals/api"
|
|
)
|
|
|
|
const (
|
|
AuthType = "alipaycode"
|
|
|
|
AuthKey = "GHp3ojlVYRRu2XID4FX2ew=="
|
|
)
|
|
|
|
type Auther struct {
|
|
authprovider.DefAuther
|
|
}
|
|
|
|
var (
|
|
AutherObj *Auther
|
|
)
|
|
|
|
func init() {
|
|
AutherObj = new(Auther)
|
|
auth2.RegisterAuther(AuthType, AutherObj)
|
|
}
|
|
|
|
func (a *Auther) VerifySecret(dummy, code string) (authBindEx *auth2.AuthBindEx, err error) {
|
|
globals.SugarLogger.Debugf("VerifySecret dummy:%s, code:%s", dummy, code)
|
|
tokenInfo, err := api.AliPayAPI.SystemAuthToken(alipayapi.GrantTypeCode, code, "")
|
|
if err == nil {
|
|
//userInfo, err2 := api.AliPayAPI.UserInfoShare(tokenInfo.AccessToken)
|
|
//if err = err2; err == nil {
|
|
if authBindEx, err = a.UnionFindAuthBind(AuthType, api.AliPayAPI.GetAppID(), nil, tokenInfo.UserID, tokenInfo.AlipayUserID, tokenInfo); err == nil {
|
|
authBindEx.AuthSecret = tokenInfo.AccessToken
|
|
authBindEx.AuthSecret2 = tokenInfo.RefreshToken
|
|
}
|
|
}
|
|
return authBindEx, err
|
|
}
|