微信公众号开发===消息推送_Controller代码(1)

荒凉一梦 提交于 2019-12-06 18:58:45
</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;
	}
	

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!