微信公众号模板消息开发小结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信公众号模板消息开发小结相关的知识,希望对你有一定的参考价值。





总结:

遇到的坑:

①要想调用微信的模版消息,我们就需要获取该用户关注的这个公众号openId,

要获取openId就要获取进入时候的code参数,code参数通过一个链接获取。那么我们在进入公众号后的时候就需要回调这个链接,然后获取到openId。

这里回调里面有一个redirect_uri参数,这个是回调的URL编码后的值。我们既然要回调,就需要在公众号管理端将回调域名设置为我们请求的域名(注意域名一个月只能修改三次)。

②在调用微信获取code的链接时,不能是ajax请求,否则回调将无法完成。应该是微信拒绝ajax请求。

                                /*
				 * 登录后,如果openId为空,则保存openId到用户表中
				 */
				String weixinOpenId = user.getWeixinOpenId();
				if(Tools.isEmpty(weixinOpenId)){
					String ssString = WechatUtils.getUserAuthURL(true,
							weixinConstant.wReturnPrefix + request.getContextPath()
							+ "/wechatLoginNoOpenId.do","0");
					response.sendRedirect(ssString);
				}

③请求的参数中url为模板消息点击后跳转的页面。

	if(!Tools.isEmpty(openId)){
			//将参数转为json
			String templateMsgJson = WechatUtils.wrapJsonData(openId,
					weixinConstant.wReturnPrefix
					+ weixinConstant.ContextPath
					+ "/inform/informWXView.do?id="+id,
					weixinConstant.template_id_inform,
					weixinConstant.firstData_inform,
					"李建波",
					"下午三点开会",//TODO
					"请及时处理",
					weixinConstant.remarkData);
			//发送模板通知
			WechatUtils.sendTemplateMsg(templateMsgJson);
		}else{
			System.err.println("----------------通知人员的openId为空");
		}


以上是关于微信公众号模板消息开发小结的主要内容,如果未能解决你的问题,请参考以下文章

.net微信公众号开发——模板消息

PHP 微信公众号开发 - 消息推送

微信公众号开发客服消息与模板消息开发(视频java版)

微信公众号开发客服消息与模板消息开发(视频java版)

主动发送微信公众平台“模板消息”需要啥条件?

微信公众号开发12模板消息