فهرست منبع

fix:强制刷新token调整

Roc 2 سال پیش
والد
کامیت
fd1ba51710
2فایلهای تغییر یافته به همراه14 افزوده شده و 6 حذف شده
  1. 1 0
      models/wechat.go
  2. 13 6
      services/wechat_send_msg.go

+ 1 - 0
models/wechat.go

@@ -76,6 +76,7 @@ func GetWxToken() (item *WxAccessToken, err error) {
 		utils.FileLog.Info("GetWxToken Err:", err.Error())
 		return
 	}
+	utils.FileLog.Info(fmt.Sprintf("GetWxAccessToken :%s", string(result)))
 	err = json.Unmarshal(result, &item)
 	if err != nil {
 		fmt.Println(fmt.Sprintf("GetWxToken Unmarshal Err:%s", err.Error()))

+ 13 - 6
services/wechat_send_msg.go

@@ -270,11 +270,13 @@ func toSendTemplateMsg(data []byte, resource string, sendType int, openId, uniqu
 // getWxAccessToken 获取微信token
 func getWxAccessToken()(accessToken string,err error,errMsg string){
 	accessToken, err = utils.Rc.RedisString(utils.CACHE_WX_ACCESS_TOKEN_HZ)
-	if err != nil {
-		errMsg = "GetWxAccessToken Err:" + err.Error()
-		utils.FileLog.Info("获取Token失败,msg:" + errMsg)
-		return
-	}
+	//fmt.Println(err)
+	//fmt.Println(accessToken)
+	//if err != nil {
+	//	errMsg = "GetWxAccessToken Err:" + err.Error()
+	//	utils.FileLog.Info("获取Token失败,msg:" + errMsg)
+	//	return
+	//}
 	//取到数据后就直接返回了,没有后续了
 	if accessToken != ""{
 		return
@@ -286,6 +288,7 @@ func getWxAccessToken()(accessToken string,err error,errMsg string){
 
 // refreshWxAccessToken 强制刷新微信token
 func refreshWxAccessToken()(accessToken string,err error,errMsg string){
+	fmt.Println("强制刷新微信token")
 	//调用微信官方接口获取新的accessToken
 	wxAccessToken, tmpErr := models.GetWxToken()
 	if tmpErr != nil {
@@ -313,7 +316,11 @@ func refreshWxAccessToken()(accessToken string,err error,errMsg string){
 
 	//更新redis的accessToken(过期时间提前十分钟)
 	redisTimeExpire := time.Duration(wxAccessToken.ExpiresIn - 600) * time.Second
-	utils.Rc.SetNX(utils.CACHE_WX_ACCESS_TOKEN_HZ,accessToken,redisTimeExpire)
+	err = utils.Rc.Put(utils.CACHE_WX_ACCESS_TOKEN_HZ,accessToken,redisTimeExpire)
+	if err!=nil{
+		errMsg = "更新redis中的accessToken失败 Err:" + err.Error()
+		return
+	}
 
 	return
 }