代码拉取完成,页面将自动刷新
package doudian_sdk
import (
"gitee.com/hansdq/dy-qc-sdk/errors"
"gitee.com/hansdq/dy-qc-sdk/utils"
)
type AccessToken struct {
CreateTokenData
response *CreateTokenResponse
}
func (at *AccessToken) IsSuccess() bool {
return at.response.Code == 10000
}
type BuildAccessTokenParam struct {
Code string
ShopId int64
Config *DoudianOpConfig
}
type RefreshAccessTokenParam struct {
RefreshToken string
Config *DoudianOpConfig
}
func BuildAccessToken(param *BuildAccessTokenParam) (*AccessToken, error) {
request := NewCreateTokenRequest()
if len(param.Code) > 0 {
request.GetParams().GrantType = "authorization_code"
request.GetParams().Code = param.Code
} else {
request.GetParams().GrantType = "authorization_self"
request.GetParams().Code = ""
request.GetParams().ShopId = param.ShopId
}
if param.Config != nil {
request.SetConfig(param.Config)
}
response, err := request.Execute(nil)
if err != nil {
return nil, err
}
accessToken := &AccessToken{
CreateTokenData: response.Data,
response: response,
}
if !accessToken.IsSuccess() {
return nil, errors.NewDoudianOpErrorWithMessage(errors.BuildAccessTokenError, utils.MarshalNoErr(response))
}
return accessToken, nil
}
func RefreshAccessToken(param *RefreshAccessTokenParam) (*AccessToken, error) {
request := NewRefreshTokenRequest()
request.GetParam().GrantType = "refresh_token"
request.GetParam().RefreshToken = param.RefreshToken
if param.Config != nil {
request.SetConfig(param.Config)
}
response, err := request.Execute(nil)
if err != nil {
return nil, err
}
accessToken := &AccessToken{
CreateTokenData: response.Data,
response: response,
}
if !accessToken.IsSuccess() {
return nil, errors.NewDoudianOpErrorWithMessage(errors.BuildAccessTokenError, utils.MarshalNoErr(response))
}
return accessToken, nil
}
func ParseAccessToken(accessTokenStr string) *AccessToken {
accessToken := &AccessToken{}
accessToken.AccessToken = accessTokenStr
return accessToken
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。