示例代码
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;/*** @author : yx-0176* @description* @date : 2023/11/27*/
public abstract class MessageSender {Logger log = LoggerFactory.getLogger(MessageSender.class);final void send(String message) {try {URL url = new URL(getUrl());HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setRequestMethod("POST");conn.setRequestProperty("Content-Type", "application/json;charset=UTF-8");conn.setDoOutput(true);// 构建JSON格式的消息体String jsonMessage = "{\"msgtype\":\"text\",\"text\":{\"content\":\"" + message + "\"}}";log.info("msg => {}", jsonMessage);try (OutputStream os = conn.getOutputStream()) {byte[] input = jsonMessage.getBytes(StandardCharsets.UTF_8);os.write(input, 0, input.length);}int responseCode = conn.getResponseCode();if (responseCode == 200) {log.info("消息发送成功!");} else {log.info("消息发送失败,HTTP响应码:" + responseCode);}} catch (Exception e) {e.printStackTrace();}}abstract String getUrl();}
机器人链接在添加机器人时获取
public class QuanDanSender extends MessageSender {@OverrideString getUrl() {return "https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";}
}