微信公眾號發送模板消息 Java實現。

jopen 8年前發布 | 183K 次閱讀 Java開發

本博文是測試公眾號調用模板接口測試。

第一步:創建模板信息

第二步:準備模板代碼實體類用到的屬性自行加入就行

public class TemplateData {
    private String value; 
    private String color;
    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
    public String getColor() {
        return color;
    }
    public void setColor(String color) {
        this.color = color;
    }
}

public class WxTemplate {

    /**
     * 模板消息id
     */
    private String template_id;
    /**
     * 用戶openId
     */
    private String touser;
    /**
     * URL置空,則在發送后,點擊模板消息會進入一個空白頁面(ios),或無法點擊(android)
     */
    private String url;
    /**
     * 標題顏色
     */
    private String topcolor;
    /**
     * 詳細內容
     */
    private Map<String,TemplateData> data;
    
    public String getTemplate_id() {
        return template_id;
    }
    public void setTemplate_id(String template_id) {
        this.template_id = template_id;
    }
    public String getTouser() {
        return touser;
    }
    public void setTouser(String touser) {
        this.touser = touser;
    }
    public String getUrl() {
        return url;
    }
    public void setUrl(String url) {
        this.url = url;
    }
    public String getTopcolor() {
        return topcolor;
    }
    public void setTopcolor(String topcolor) {
        this.topcolor = topcolor;
    }
    public Map<String, TemplateData> getData() {
        return data;
    }
    public void setData(Map<String, TemplateData> data) {
        this.data = data;
    }
    
    
    
}

第三步:具體方式實現本博文只是測試公眾號測試模板接口調用

public class SendOrderPaySuccessMsg {
    
    Logger log = LoggerFactory.getLogger(getClass());

    /**
     * 發送模板消息
     * appId 公眾賬號的唯一標識
     * appSecret 公眾賬號的密鑰
     * openId 用戶標識
     */
    public void send_template_message(String appId, String appSecret, String openId) {
        AccessToken token = WeixinUtil.getAccessToken(appId, appSecret);
        String access_token = token.getToken();
        String url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+access_token;
        WxTemplate temp = new WxTemplate();
        temp.setUrl("http://weixin.qq.com/download");
        temp.setTouser(openId);
        temp.setTopcolor("#000000");
//        temp.setTemplate_id("ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY");
        temp.setTemplate_id("LBBm6qscHUcz-0Gh7PlBonsLKtJBHjCLIirnaiBZ4xQ");
        Map<String,TemplateData> m = new HashMap<String,TemplateData>();
        TemplateData first = new TemplateData();
        first.setColor("#000000");  
        first.setValue("這里填寫您要發送的模板信息");  
        m.put("first", first);  
        TemplateData name = new TemplateData();  
        name.setColor("#000000");  
        name.setValue("另一行內人");  
        m.put("name", name);
        TemplateData wuliu = new TemplateData();  
        wuliu.setColor("#000000");  
        wuliu.setValue("N行");  
        m.put("wuliu", wuliu);
        TemplateData orderNo = new TemplateData();  
        orderNo.setColor("#000000");  
        orderNo.setValue("**666666");  
        m.put("orderNo", orderNo);
        TemplateData receiveAddr = new TemplateData();  
        receiveAddr.setColor("#000000");  
        receiveAddr.setValue("*測試模板");  
        m.put("receiveAddr", receiveAddr);
        TemplateData remark = new TemplateData();  
        remark.setColor("#000000");  
        remark.setValue("***備注說明***");  
        m.put("Remark", remark);
        temp.setData(m);
        String jsonString = JSONObject.fromObject(temp).toString();
        JSONObject jsonObject = WeixinUtil.httpRequest(url, "POST", jsonString);
        System.out.println(jsonObject);
        int result = 0;
        if (null != jsonObject) {  
             if (0 != jsonObject.getInt("errcode")) {  
                 result = jsonObject.getInt("errcode");
                 log.error("錯誤 errcode:{} errmsg:{}", jsonObject.getInt("errcode"), jsonObject.getString("errmsg"));  
             }  
         }
        log.info("模板消息發送結果:"+result);
    }

第四步:截圖示意

來自: http://my.oschina.net/xshuai/blog/602469

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!