总结:
遇到的坑:
①要想调用微信的模版消息,我们就需要获取该用户关注的这个公众号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为空"); }
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦