자바 기반 못 박 기 로봇 으로 못 군 에 메 시 지 를 전송 합 니 다.
첫 번 째,못 박 이 컴퓨터 판 에 로그 인하 여 못 박 이 로봇 의 웹 훅 을 얻 습 니 다.
두 번 째 단 계 는 자바 로 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);
}
}
테스트 결 과 는 다음 과 같다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.