Forráskód Böngészése

回调发送消息

15376779826 2 napja
szülő
commit
5ed3509b73

+ 5 - 3
fs-company/src/main/java/com/fs/company/controller/wechat/WechatCallbackController.java

@@ -7,6 +7,7 @@ import com.fs.company.util.XmlUtil;
 import com.fs.wx.utils.WechatTemplateAuthUtil;
 import org.apache.commons.io.IOUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
@@ -25,8 +26,9 @@ public class WechatCallbackController {
     @Autowired
     private WechatTemplateAuthUtil wechatTemplateAuthUtil;
 
-    private static final String TOKEN = "PPKOdAlCoMO";
-
+    //private static final String TOKEN = "PPKOdAlCoMO";
+    @Value("${wx.mp.configs[0].token}")
+    private String secret;
     /** 微信服务器验证 (GET) */
     @GetMapping
     public String verify(
@@ -35,7 +37,7 @@ public class WechatCallbackController {
             @RequestParam("nonce") String nonce,
             @RequestParam("echostr") String echostr) {
 
-        String[] arr = new String[]{TOKEN, timestamp, nonce};
+        String[] arr = new String[]{secret, timestamp, nonce};
         Arrays.sort(arr);
         String content = String.join("", arr);
 

+ 11 - 7
fs-service/src/main/java/com/fs/company/util/WechatApi.java

@@ -8,6 +8,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.HttpEntity;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.MediaType;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Component;
 import org.springframework.web.client.RestTemplate;
 
@@ -22,13 +23,13 @@ import java.util.Map;
 @Component
 public class WechatApi {
 
-//    @Value("${wechat.appid}")
-//    private String appId;
-//
-//    @Value("${wechat.secret}")
-//    private String secret;
-    private String appId = "wx7670b3b1b1cfcd47";
-    private String secret = "c6e5726c7039092a907c3242c8d3e406";
+    @Value("${wx.mp.configs[0].appId}")
+    private String appId;
+
+    @Value("${wx.mp.configs[0].secret}")
+    private String secret;
+//    private String appId = "wx7670b3b1b1cfcd47";
+//    private String secret = "c6e5726c7039092a907c3242c8d3e406";
 
     private String accessToken;
     private long tokenExpireTime;
@@ -64,6 +65,7 @@ public class WechatApi {
         return "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" + URLEncoder.encode(ticket, "UTF-8");
     }
 
+    //发送长期订阅消息
     public static void sendSubscribeMessage(String accessToken, String openId) {
         //accessToken = "97_AWdZem-aCEBY8bt8vlQV0Hz1OmJnXGCRwWZiiUAuVxZmwYtIJbxP13ADoqZ5p8cFBef2JrF8lo3wMUjvGCUTsXuhA0hrlG-RYhPzuoRFHh8o4Iwxj0Ai4TDWvGcWEQhAFAEMY";
         String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/bizsend?access_token=" + accessToken;
@@ -90,6 +92,8 @@ public class WechatApi {
         System.out.println("微信返回结果:" + result);
     }
 
+    //发送模板消息
+    @Async
     public void sendTemplateMessage(String accessToken, String openId, Date payTime, String userName, BigDecimal payPrice,String orderCode) {
         //accessToken = "97_AWdZem-aCEBY8bt8vlQV0Hz1OmJnXGCRwWZiiUAuVxZmwYtIJbxP13ADoqZ5p8cFBef2JrF8lo3wMUjvGCUTsXuhA0hrlG-RYhPzuoRFHh8o4Iwxj0Ai4TDWvGcWEQhAFAEMY";
         String url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken;