|  | @@ -2,11 +2,13 @@ package com.cybertogether.wx.notice.web;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.cybertogether.wx.notice.infrastructure.Downstream;
 | 
	
		
			
				|  |  |  import com.cybertogether.wx.notice.infrastructure.HttpClientUtils;
 | 
	
		
			
				|  |  | +import com.cybertogether.wx.notice.infrastructure.HttpResponseContent;
 | 
	
		
			
				|  |  |  import org.slf4j.Logger;
 | 
	
		
			
				|  |  |  import org.slf4j.LoggerFactory;
 | 
	
		
			
				|  |  |  import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  |  import org.springframework.web.bind.annotation.*;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import java.util.Objects;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /**
 | 
	
	
		
			
				|  | @@ -34,15 +36,14 @@ public class WxPushReceptionController {
 | 
	
		
			
				|  |  |                                                @RequestBody String encryptedXmlBodyText) {
 | 
	
		
			
				|  |  |          LOGGER.info("微信通知转发服务-收到微信授权通知");
 | 
	
		
			
				|  |  |          String urlParams = String.format("?timestamp=%s&nonce=%s&msg_signature=%s", timestamp, nonce, msgSignature);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          for (String url : downstream.getUrls()) {
 | 
	
		
			
				|  |  | -            try {
 | 
	
		
			
				|  |  | -                HttpClientUtils.postData(url + urlParams, encryptedXmlBodyText);
 | 
	
		
			
				|  |  | -            }catch (Exception e) {
 | 
	
		
			
				|  |  | -                // ignore
 | 
	
		
			
				|  |  | +            for (int i = 0; i < 5; i++) {
 | 
	
		
			
				|  |  | +                HttpResponseContent hrc = HttpClientUtils.postData(url + urlParams, encryptedXmlBodyText);
 | 
	
		
			
				|  |  | +                if (Objects.nonNull(hrc) && hrc.isSuccessful()) {
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          return "success";
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -57,17 +58,15 @@ public class WxPushReceptionController {
 | 
	
		
			
				|  |  |                                      @RequestBody String encryptedXmlBodyText,
 | 
	
		
			
				|  |  |                                      @PathVariable String appId) {
 | 
	
		
			
				|  |  |          LOGGER.info("微信通知转发服务-收到微信消息与事件通知");
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          String urlParams = String.format("?timestamp=%s&nonce=%s&msg_signature=%s", timestamp, nonce, msgSignature);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          for (String url : downstream.getMsgUrls()) {
 | 
	
		
			
				|  |  | -            try {
 | 
	
		
			
				|  |  | -                HttpClientUtils.postData(url + appId + urlParams, encryptedXmlBodyText);
 | 
	
		
			
				|  |  | -            }catch (Exception e) {
 | 
	
		
			
				|  |  | -                // ignore
 | 
	
		
			
				|  |  | +            for (int i = 0; i < 5; i++) {
 | 
	
		
			
				|  |  | +                HttpResponseContent hrc = HttpClientUtils.postData(url + appId + urlParams, encryptedXmlBodyText);
 | 
	
		
			
				|  |  | +                if (Objects.nonNull(hrc) && hrc.isSuccessful()) {
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          return "success";
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  }
 |