</pre><pre name="code" class="java">项目目的:由于是电商项目,所以在用户下单之后,需要在微信公众号中推送订单的状态
项目流程:
1、需要在公众号后台创建模板
<img src="https://img-blog.csdn.net/20161011103432382?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
2.根据微信文档,编写代码
</pre><pre name="code" class="java">
<span style="white-space:pre"> </span>/**
* - 公众号通知推送
*/
@RequestMapping(UrlRoute.WEIXIN_PUSH_MESSAGE_FLOWER)
@ResponseBody
public Map<String, Object> pushTemplateMsg(HttpServletRequest request) {
String url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=";
String appid = WeiXinConfig.APPID;
String secret = WeiXinConfig.APPSECRET;
String get_token = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid
+ "&secret=" + secret;
// 请求 token
JSONObject jsonObjectToken = CommonUtil.httpsRequest(get_token, "GET", null);
System.out.println("push - flower - getToken===========" + jsonObjectToken.toString());
String access_token = (String) jsonObjectToken.get("access_token");
JedisConnector_Persistence.getInstance().set("ACCESSTOKEN", access_token, 60 * 60 * 2);
url += access_token;
Map<String, Object> map = ServletModelCreator.createMapBySimpleHttp(request);
System.out.println("push-map-pushTemplateMsg==========" + map.toString());
String type = (String) map.get("type");
System.out.println("push - flower - pushTemplateMsg==================" + type);
JSONObject jsonObject = null;
/**
* - 鲜花 -
*/
//1. 订单支付成功
if (type.equals("FLOWER_PAY_SCCESSED")) {
jsonObject = NotifyPushFlower.paySuccess(map);
//2. 订单发货提醒
} else if (type.equals("FLOWER_DELIVERY_REMINDER")) {
jsonObject = NotifyPushFlower.deliverGoods(map);
}
System.out.println("flower - pushTemplateMsg=====================" + jsonObject.toString());
try {
HttpPostUtil.httpPostWithJSON(url, jsonObject.toString());
} catch (Exception e) {
e.printStackTrace();
}
return null;
}