- refresh token的时候要判断相应API是否存在

This commit is contained in:
gazebo
2019-04-24 14:21:43 +08:00
parent 7ac08594b4
commit b6c60c2cc3

View File

@@ -106,8 +106,9 @@ func RefreshConfig(configKey string, expiresTime time.Duration, configGetter fun
return err
}
func RefreshWeixinToken() error {
return RefreshConfig("wechat", weixinTokenExpires, func() (string, string) {
func RefreshWeixinToken() (err error) {
if api.WeixinAPI != nil {
err = RefreshConfig("wechat", weixinTokenExpires, func() (string, string) {
globals.SugarLogger.Debugf("RefreshWeixinToken RunMode:%s", beego.BConfig.RunMode)
if beego.BConfig.RunMode == "prod" {
if tokenInfo, err := api.WeixinAPI.CBRetrieveToken(); err == nil {
@@ -122,9 +123,12 @@ func RefreshWeixinToken() error {
api.WeixinAPI.CBSetToken(value)
})
}
return err
}
func RefreshElmToken() error {
return RefreshConfig("eleme", elmTokenExpires, func() (string, string) {
func RefreshElmToken() (err error) {
if api.ElmAPI != nil {
err = RefreshConfig("eleme", elmTokenExpires, func() (string, string) {
if beego.BConfig.RunMode == "prod" {
if tokenInfo, err := api.ElmAPI.RefreshTokenIndividual(); err == nil {
tokenInfo2 := &ElmTokenForCompatible{
@@ -148,9 +152,12 @@ func RefreshElmToken() error {
}
})
}
return err
}
func RefreshWeimobToken() error {
return RefreshConfig("weimob", weimobTokenExpires, func() (string, string) {
func RefreshWeimobToken() (err error) {
if api.WeimobAPI != nil {
err = RefreshConfig("weimob", weimobTokenExpires, func() (string, string) {
if beego.BConfig.RunMode == "prod" {
if tokenInfo, err := api.WeimobAPI.RefreshTokenByRefreshToken(); err == nil {
return string(utils.MustMarshal(tokenInfo)), utils.Time2Str(time.Now().Add((time.Duration(tokenInfo.ExpiresIn) - weimobTokenExpires/time.Second) * time.Second))
@@ -165,8 +172,10 @@ func RefreshWeimobToken() error {
}
})
}
return err
}
func RefreshDingDingToken() error {
func RefreshDingDingToken() (err error) {
api.DingDingAPI.RetrieveToken()
return RefreshConfig("dingding", dingdingTokenExpires, func() (string, string) {
globals.SugarLogger.Debugf("RefreshDingDingToken RunMode:%s", beego.BConfig.RunMode)
@@ -195,7 +204,7 @@ func SaveWeimobToken(token *weimobapi.TokenInfo) (err error) {
return dao.CreateOrUpdate(db, config)
}
func RefreshYilianyunToken() error {
func RefreshYilianyunToken() (err error) {
return RefreshConfig("yilianyun", yilianyunTokenExpires, func() (string, string) {
globals.SugarLogger.Debugf("RefreshYilianyunToken RunMode:%s", beego.BConfig.RunMode)
if beego.BConfig.RunMode == "prod" {