1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package wxcomponent
-
- import (
- "gitee.com/yansen_zh/wxcomponent/api/mp/webpage"
- "gitee.com/yansen_zh/wxcomponent/config"
- )
-
- // 代公众号服务
- type MPService struct {
- appID string
- }
-
- // GetMpService 获取代公众号服务
- func GetMpService(appID string) *MPService {
- return &MPService{appID: appID}
- }
-
- // JsapiTicket 代公众号使用js sdk
- func (t *MPService) JsapiTicket(url string) (*webpage.JsapiSignature, error) {
- ticket, err := webpage.GetJSTicket(config.GetAuthorizer().GetAccessToken(t.appID))
- if err != nil {
- return nil, err
- }
-
- signature := webpage.GetJSAPISignature(ticket.Ticket, url)
- return signature, nil
- }
-
- // GetOpenID 网页授权 code 换取 OpenID
- func (t *MPService) GetOpenID(code string) (string, error) {
- token, err := webpage.GetOAuthAccessToken(t.appID, code)
- if err != nil {
- return "", err
- }
-
- return token.OpenID, nil
- }
-
- // GetSnsUserInfo 网页授权, 获取用户信息
- func (t *MPService) GetSnsUserInfo(code string) (*webpage.SnsApiUserInfo, error) {
- token, err := webpage.GetOAuthAccessToken(t.appID, code)
- if err != nil {
- return nil, err
- }
-
- return webpage.GetSnsApiUserInfo(token.AccessToken, token.OpenID, "")
- }
|