java 微信公众服务平台 下发 模板消息
2015-03-18 17:54
671 查看
java 微信公众服务平台 下发 模板消息
(一).部分截图
(二).部分代码
(一).部分截图:
(二).部分代码:
//此处 给用户微信发消息... Map<String,String> paraMap = new HashMap<String,String>(); String pk_paydata = (String)curDataMap.get("pk_paydata"); String personname = (String)curDataMap.get("personname"); String wxid = (String)curDataMap.get("wxid"); if(null==wxid || "".equals(wxid)){ throw new Exception(personname+"的没有绑定微信账户,请先绑定后再下发!"); } paraMap.put("@WXID@", wxid); paraMap.put("@TEMPLATE_ID@", CommendDef.PAYROLL_TEMPLATE_ID); paraMap.put("@URL@", CommendURL.viewPayRollUrl()+"period="+period+"&wxid="+wxid); paraMap.put("@CONTENT@", personname+",您好,"+period+"的信息已下发,请点击查看详情。"); String errcode = TemplateMessageUtil.sendTemplateMsg(paraMap); if("0".equals(errcode)){ logger.info(personname+"微信下发成功!"); }else{ logger.info(personname+"微信下发失败!"); }
TemplateMessageUtil:
package com.payroll.wx.util; import java.util.Map; import java.util.Map.Entry; import net.sf.json.JSONObject; import com.util.EmailUtil; /** * 微信发送 模板消息util * * @author lifq * @date 2015-3-18 下午05:43:40 */ public class TemplateMessageUtil { //下发薪资单 模板消息 public static final String SEND_PERIOD_TEMPLATE = "{\n"+ "\"touser\":\"@WXID@\",\n"+ "\"template_id\":\"@TEMPLATE_ID@\",\n"+ "\"url\":\"@URL@\",\n"+ "\"topcolor\":\"#FF0000\",\n"+ "\"data\":{\n"+ " \"content\":{\n"+ "\"value\":\"@CONTENT@\",\n"+ "\"color\":\"#173177\"\n"+ "}\n"+ "}\n"+ "}"; /** * 发送模板消息 * * @return boolean * @author lifq * @date 2015-2-11 下午03:25:07 */ public static String sendTemplateMsg (Map<String,String> paraMap){ String data = TemplateMessageUtil.SEND_PERIOD_TEMPLATE; //替换变量 for (Entry<String, String> entry: paraMap.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); data = EmailUtil.replace(data,key,value); } String res = HttpPostUtil.doHttpPostJson(CommendURL.TemplateUrl(), data); JSONObject demoJson = JSONObject.fromObject(res); String errcode = demoJson.getString("errcode"); return errcode; } }
HttpPostUtil:
package com.payroll.wx.util; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; public class HttpPostUtil { public static String doHttpPostJson(String Url,String json) { String message = ""; System.out.println(json); try { URL url = new URL(Url); HttpURLConnection http = (HttpURLConnection) url.openConnection(); http.setRequestMethod("POST"); http.setRequestProperty("Content-Type","application/x-www-form-urlencoded"); http.setDoOutput(true); http.setDoInput(true); System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//连接超时30秒 System.setProperty("sun.net.client.defaultReadTimeout", "30000"); //读取超时30秒 http.connect(); OutputStream os= http.getOutputStream(); os.write(json.getBytes("UTF-8"));//传入参数 os.flush(); os.close(); InputStream is =http.getInputStream(); int size =is.available(); byte[] jsonBytes =new byte[size]; is.read(jsonBytes); message=new String(jsonBytes,"UTF-8"); System.out.println(message); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return message; } }
相关文章推荐
- Java使用HTTPClient3.0.1开发的公众平台消息模板的推送功能
- java实现获取微信公众服务号消息
- 微信小程序,公众号发送模板消息(java)
- Java使用HTTPClient4.3开发的公众平台消息模板的推送功能
- java开发微信第三方平台 模板消息发送消息案例
- 微信公众账号推送模板消息(java版)
- java编写微信公众账号收发消息
- 【java】调用微信模板消息推送,线程池优化推送速度。
- 微信公众账号开发,将消息转发到指定客服java 代码
- 微信公共服务平台开发(.Net 的实现)11-------客服消息(定项消息推送 重要的OPENID)
- 微信公众账号(平台)java开发源码下载
- [转]企业呼吁微信开放公众平台接口 挖掘服务潜力
- 微信公共服务平台开发(.Net 的实现)11-------客服消息(定项消息推送 重要的OPENID)
- jackson实现java对象转支付宝/微信模板消息
- 微信开发被动回复消息:该公众号暂时无法提供服务,请稍后再试
- 微信公共服务平台开发(.Net 的实现)3-------发送文本消息
- 微信公众账号开发-发送模板消息
- java微信模板消息接口的使用
- 微信服务号被动回复消息:该公众号提供的服务出现故障,请稍后再试
- 微信公众开放平台开发08---纯java 实现微信开发:编写自定义菜单