자바 기반 못 박 기 로봇 으로 못 군 에 메 시 지 를 전송 합 니 다.

이 글 은 주로 자바 가 못 박 이 로봇 을 사용 하여 못 군 에 메 시 지 를 전달 하 는 것 을 소개 하 였 으 며,글 에 서 는 예제 코드 를 통 해 매우 상세 하 게 소개 하 였 으 며,여러분 의 학습 이나 업무 에 대해 어느 정도 참고 학습 가 치 를 가지 고 있 으 며,필요 한 친 구 는 참고 할 수 있 습 니 다.
첫 번 째,못 박 이 컴퓨터 판 에 로그 인하 여 못 박 이 로봇 의 웹 훅 을 얻 습 니 다.






두 번 째 단 계 는 자바 로 post 를 보 내 못 에 메시지 푸 시 를 요청 합 니 다.

package com.thinkgem.wlw.modules.lhjh.DingTalk;

import com.alibaba.fastjson.JSON;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.*;
import java.net.URL;
import java.net.URLConnection;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
/**
 * @Author: zhouhe
 * @Date: 2019/6/20 14:49
 */
public class SendHttps {
  private static Logger logger = LoggerFactory.getLogger(SendHttps.class);
  /**
   *   POST  ,   Map, contentType=x-www-form-urlencoded
   *
   * @param url
   * @param mapParam
   * @return
   */
  public static String sendPostByMap(String url, Map<String, Object> mapParam) {
    Map<String, String> headParam = new HashMap();
    headParam.put("Content-type", "application/json;charset=UTF-8");
    return sendPost(url, mapParam, headParam);
  }

  /**
   *     URL   POST     
   *
   * @param url        URL
   * @param param     ,
   * @return             
   */
  public static String sendPost(String url, Map<String, Object> param, Map<String, String> headParam) {
    PrintWriter out = null;
    BufferedReader in = null;
    String result = "";
    try {
      URL realUrl = new URL(url);
      //    URL     
      URLConnection conn = realUrl.openConnection();
      //              
      conn.setRequestProperty("accept", "*/*");
      conn.setRequestProperty("connection", "Keep-Alive");
      conn.setRequestProperty("user-agent",
          "Fiddler");

      if (headParam != null) {
        for (Entry<String, String> entry : headParam.entrySet()) {
          conn.setRequestProperty(entry.getKey(), entry.getValue());
        }
      }
      //   POST          
      conn.setDoOutput(true);
      conn.setDoInput(true);
      //   URLConnection        
      out = new PrintWriter(conn.getOutputStream());
      //       
      out.print(JSON.toJSONString(param));
      // flush      
      out.flush();
      //   BufferedReader      URL   
      in = new BufferedReader(
          new InputStreamReader(conn.getInputStream()));
      String line;
      while ((line = in.readLine()) != null) {
        result += line;
      }
    } catch (Exception e) {
      logger.info("   POST       !" + e);
      e.printStackTrace();
    }
    //  finally       、   
    finally {
      try {
        if (out != null) {
          out.close();
        }
        if (in != null) {
          in.close();
        }
      } catch (IOException ex) {
        ex.printStackTrace();
      }
    }
    return result;
  }
}
세 번 째 단계,테스트 클래스 작성

package com.thinkgem.wlw.modules.lhjh.DingTalk;

import java.util.HashMap;
import java.util.Map;

/**
 * @Author: zhouhe
 * @Date: 2019/6/20 14:52
 */
public class SendMessage {
  public static void main(String[] args){

    //    webhook
    String dingDingToken="https://oapi.dingtalk.com/robot/send?access_token=0f0daca33m98gn78f00189fe1e1e908b81fa26d0d8ddd48fa78a844cd8636187";
    //    JSON  ,    map       json  
    Map<String,Object> json=new HashMap();
    Map<String,Object> text=new HashMap();
    json.put("msgtype","text");
    text.put("content","    :VOCs        :61.89");
    json.put("text",text);
    //   post  
    String response = SendHttps.sendPostByMap(dingDingToken, json);
    System.out.println("    :"+response);

  }
}
테스트 결 과 는 다음 과 같다.


이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기