diff --git a/src/main/java/com/ycwl/basic/notify/NotifyFactory.java b/src/main/java/com/ycwl/basic/notify/NotifyFactory.java index 993494c..74a7885 100644 --- a/src/main/java/com/ycwl/basic/notify/NotifyFactory.java +++ b/src/main/java/com/ycwl/basic/notify/NotifyFactory.java @@ -1,6 +1,7 @@ package com.ycwl.basic.notify; import com.ycwl.basic.notify.adapters.INotifyAdapter; +import com.ycwl.basic.notify.adapters.ServerChanNotifyAdapter; import com.ycwl.basic.notify.enums.NotifyType; import java.util.HashMap; @@ -10,7 +11,7 @@ public class NotifyFactory { public static INotifyAdapter get(NotifyType type) { switch (type) { case SERVER_CHAN: - return new com.ycwl.basic.notify.adapters.ServerChanNotifyAdapter(); + return new ServerChanNotifyAdapter(); default: throw new RuntimeException("不支持的通知类型"); } diff --git a/src/main/java/com/ycwl/basic/notify/adapters/ServerChanNotifyAdapter.java b/src/main/java/com/ycwl/basic/notify/adapters/ServerChanNotifyAdapter.java index fab9796..764378d 100644 --- a/src/main/java/com/ycwl/basic/notify/adapters/ServerChanNotifyAdapter.java +++ b/src/main/java/com/ycwl/basic/notify/adapters/ServerChanNotifyAdapter.java @@ -1,14 +1,10 @@ package com.ycwl.basic.notify.adapters; +import cn.hutool.http.HttpUtil; import com.ycwl.basic.notify.entity.NotifyContent; import com.ycwl.basic.notify.entity.ServerChanConfig; -import java.io.BufferedReader; -import java.io.DataOutputStream; -import java.io.InputStreamReader; -import java.net.HttpURLConnection; -import java.net.URL; -import java.net.URLEncoder; +import java.util.HashMap; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -46,28 +42,10 @@ public class ServerChanNotifyAdapter implements INotifyAdapter { } else { api = "https://sctapi.ftqq.com/" + key + ".send"; } - - String body = "text=" + URLEncoder.encode(title, "UTF-8") + "&desp=" + URLEncoder.encode(content, "UTF-8"); - URL apiUrl = new URL(api); - HttpURLConnection httpConnection = (HttpURLConnection) apiUrl.openConnection(); - httpConnection.setRequestMethod("POST"); - httpConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); - httpConnection.setDoOutput(true); - DataOutputStream bodyWriter = new DataOutputStream(httpConnection.getOutputStream()); - bodyWriter.writeBytes(body); - bodyWriter.flush(); - bodyWriter.close(); - int responseCode = httpConnection.getResponseCode(); - BufferedReader reader = new BufferedReader(new InputStreamReader(httpConnection.getInputStream())); - StringBuilder responseText = new StringBuilder(); - - String line; - while ((line = reader.readLine()) != null) { - responseText.append(line); - } - - reader.close(); - return responseText.toString(); + Map body = new HashMap<>(); + body.put("title", title); + body.put("desp", content); + return HttpUtil.post(api, body); } catch (Exception e) { e.printStackTrace(); return null; diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 764ad44..71cce5c 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -163,4 +163,4 @@ notify: - name: "developer" type: "SERVER_CHAN" config: - key: sctp747tje1xjxbwn2fodgu1qezpn3 \ No newline at end of file + key: "sctp747ta-wkq4hlzb6e42t8d1sm8wbc9g" \ No newline at end of file diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index c7d533a..835b6f7 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -165,4 +165,4 @@ notify: - name: "developer" type: "SERVER_CHAN" config: - key: sctp747tje1xjxbwn2fodgu1qezpn3 \ No newline at end of file + key: "sctp747ta-wkq4hlzb6e42t8d1sm8wbc9g" \ No newline at end of file