This commit is contained in:
gazebo
2019-04-27 17:58:36 +08:00
parent 94484a92b7
commit 9bac02f9aa
2 changed files with 18 additions and 9 deletions

View File

@@ -74,7 +74,7 @@ func RefreshConfig(configKey string, expiresTime time.Duration, configGetter fun
handleType = 2
} else {
configSetter(curConfig.Token)
if curConfig.Date <= utils.Time2Str(time.Now().Add(-needRefreshGap)) {
if curConfig.Date <= utils.Time2Str(time.Now().Add(-needRefreshGap)) || IsGetWXTokenFromRemote() {
handleType = 1
}
}
@@ -134,11 +134,12 @@ func RefreshWeixinToken() (err error) {
globals.SugarLogger.Errorf("RefreshWeixinToken RefreshToken failed with error:%v", err)
}
} else {
tokenInfo := getWXTokenFromProd(api.WeixinAPI.CBGetToken())
if !tokenInfo.IsNew {
expireTimeStr = utils.Time2Str(time.Now().Add(-weixinTokenExpires))
if tokenInfo := getWXTokenFromRemote(api.WeixinAPI.CBGetToken()); tokenInfo != nil {
if !tokenInfo.IsNew {
expireTimeStr = utils.Time2Str(time.Now().Add(-weixinTokenExpires))
}
token = tokenInfo.Token
}
token = tokenInfo.Token
}
}
return token, expireTimeStr
@@ -249,8 +250,8 @@ func RefreshYilianyunToken() (err error) {
})
}
func getWXTokenFromProd(oldToken string) (tokenInfo *syseventhub.WXTokenInfo) {
if globals.GetWeixinTokenKey != "" && globals.GetWeixinTokenURL != "" {
func getWXTokenFromRemote(oldToken string) (tokenInfo *syseventhub.WXTokenInfo) {
if IsGetWXTokenFromRemote() {
for {
waitSecond := 5 * 60
globals.SugarLogger.Debugf("getWXTokenFromProd1")
@@ -287,3 +288,7 @@ func getWXTokenFromProd(oldToken string) (tokenInfo *syseventhub.WXTokenInfo) {
}
return tokenInfo
}
func IsGetWXTokenFromRemote() bool {
return !globals.IsMainProductEnv() && globals.GetWeixinTokenKey != "" && globals.GetWeixinTokenURL != ""
}

View File

@@ -84,6 +84,10 @@ func IsCallbackAlwaysReturnSuccess() bool {
return beego.BConfig.RunMode == "beta"
}
func IsProductEnv() bool {
return beego.BConfig.RunMode == "prod" || beego.BConfig.RunMode == "jxgy"
func IsMainProductEnv() bool {
return beego.BConfig.RunMode == "prod"
}
func IsProductEnv() bool {
return IsMainProductEnv() || beego.BConfig.RunMode == "jxgy"
}