Files
baseapi/platformapi/tao_vegetable/api_token.go
邹宗楠 30a775ac86 1
2024-07-17 16:55:01 +08:00

84 lines
2.2 KiB
Go

package tao_vegetable
import (
"encoding/json"
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk"
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability304"
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability304/request"
)
const (
AppKey = "34402634"
AppSecret = "fda9a7045262e3aa1f26ca508a9be242"
ServerUrl = "https://eco.taobao.com/router/rest" // 正式环境https
ServerUrl2 = "https://qimen.api.taobao.com/top/router/qmtest" // 沙箱环境https
ServerUrl3 = "http://qimen.api.taobao.com/top/router/qm" // 正式环境http
ServerUrl4 = "http://qimen.api.taobao.com/top/router/qmtest" // 沙箱环境http
)
func NewTaoVegetable(appKey, appSecret, serverUrl string) *API {
return &API{client: topsdk.NewDefaultTopClient(appKey, appSecret, serverUrl, 10000, 10000)}
}
type API struct {
client topsdk.TopClient
token string
refreshToken string
vendorOrgCode string
}
func (a *API) GetVendorOrgCode() string {
return a.vendorOrgCode
}
func (a *API) SetVendorOrgCode(vendorOrgCode string) {
a.vendorOrgCode = vendorOrgCode
}
func (a *API) GetAppSecret() string {
return a.client.AppSecret
}
func (a *API) SetToken(token string) {
a.token = token
}
func (a *API) GetToken() string {
return a.token
}
func (a *API) SetRefreshToken(refreshToken string) {
a.refreshToken = refreshToken
}
func (a *API) GetStoreToken(code, uuId string) (*StoreTokenInfo, error) {
param := &request.TaobaoTopAuthTokenCreateRequest{
Code: &code,
}
data, err := ability304.NewAbility304(&a.client).TaobaoTopAuthTokenCreate(param)
if err != nil {
return nil, err
}
var token *StoreTokenInfo
if err := json.Unmarshal([]byte(data.TokenResult), &token); err != nil {
return nil, err
}
return token, err
}
func (a *API) GetRefreshToken(refreshToken string) (*StoreTokenInfo, error) {
param := &request.TaobaoTopAuthTokenRefreshRequest{
RefreshToken: &refreshToken,
}
data, err := ability304.NewAbility304(&a.client).TaobaoTopAuthTokenRefresh(param)
if err != nil {
return nil, err
}
var token *StoreTokenInfo
if err := json.Unmarshal([]byte(data.TokenResult), &token); err != nil {
return nil, err
}
return token, err
}