天天看點

java發送微信公衆号模闆消息

@Resource
RestTemplate restTemplate;

@RequestMapping("/test")
public String test(){
    String token = "xxxxxxxxxxxxxxxxxxxxxxxx";
    String teamName = "微信推送測試";
    //接口位址
    String sendMsgApi = String.format("https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=%s",token);

    //要發給指定的人openId
    String toUser = "xxxxxxxxxxxxxxxxx";
    //消息模闆id
    String template_id = "xxxxxxxxxxxxxxxxxxxx";


    //整體參數map
    Map<String, Object> paramMap = new HashMap<String, Object>();
    //消息主題顯示相關map
    Map<String, Object> dataMap = new HashMap<String, Object>();
    //根據自己的模闆定義内容和顔色
    dataMap.put("first",new WechatData(teamName,"#fff"));
    
    paramMap.put("touser", toUser);
    paramMap.put("template_id", template_id);
    paramMap.put("data", dataMap);

    //調用微信接口,發送模闆消息
    Map<String,Object> result = restTemplate.postForObject(sendMsgApi,paramMap, Map.class);
    if(result.get("errcode").equals(0)){
       //
        return "ok";
    }
    return "ko";
}

class WechatData{
    private String name;
    private String color;
    public WechatData(){

    }
    public WechatData(String name,String color){

    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }
}