Skip to content

Commit

Permalink
mini 开发平台代小程序实现业务逻辑完善 (#623)
Browse files Browse the repository at this point in the history
* mini 代小程序实现业务逻辑完善

* mini fix ci

* fix ci1

Co-authored-by: yanglaosan <yang88can@163.com>
  • Loading branch information
YangCSir and yanglaosan committed Oct 10, 2022
1 parent bbbada1 commit 2bc0536
Showing 1 changed file with 30 additions and 5 deletions.
35 changes: 30 additions & 5 deletions openplatform/miniprogram/miniprogram.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ package miniprogram
import (
"fmt"

"github.com/silenceper/wechat/v2/credential"
"github.com/silenceper/wechat/v2/miniprogram"
miniConfig "github.com/silenceper/wechat/v2/miniprogram/config"
miniContext "github.com/silenceper/wechat/v2/miniprogram/context"
"github.com/silenceper/wechat/v2/miniprogram/urllink"
openContext "github.com/silenceper/wechat/v2/openplatform/context"
Expand All @@ -14,7 +17,7 @@ import (
type MiniProgram struct {
AppID string
openContext *openContext.Context

*miniprogram.MiniProgram
authorizerRefreshToken string
}

Expand Down Expand Up @@ -42,10 +45,13 @@ func (miniProgram *MiniProgram) SetAuthorizerRefreshToken(authorizerRefreshToken

// NewMiniProgram 实例化
func NewMiniProgram(opCtx *openContext.Context, appID string) *MiniProgram {
return &MiniProgram{
openContext: opCtx,
AppID: appID,
}
miniProgram := miniprogram.NewMiniProgram(&miniConfig.Config{
AppID: opCtx.AppID,
Cache: opCtx.Cache,
})
// 设置获取access_token的函数
miniProgram.SetAccessTokenHandle(NewDefaultAuthrAccessToken(opCtx, appID))
return &MiniProgram{AppID: appID, MiniProgram: miniProgram, openContext: opCtx}
}

// GetComponent get component
Expand All @@ -65,3 +71,22 @@ func (miniProgram *MiniProgram) GetURLLink() *urllink.URLLink {
AccessTokenHandle: miniProgram,
})
}

// DefaultAuthrAccessToken 默认获取授权ak的方法
type DefaultAuthrAccessToken struct {
opCtx *openContext.Context
appID string
}

// NewDefaultAuthrAccessToken 设置access_token
func NewDefaultAuthrAccessToken(opCtx *openContext.Context, appID string) credential.AccessTokenHandle {
return &DefaultAuthrAccessToken{
opCtx: opCtx,
appID: appID,
}
}

// GetAccessToken 获取ak
func (ak *DefaultAuthrAccessToken) GetAccessToken() (string, error) {
return ak.opCtx.GetAuthrAccessToken(ak.appID)
}

0 comments on commit 2bc0536

Please sign in to comment.