微信小程序,公众号发送模板消息小程序发送模板消息和公众号有一点不同的可能就是小程序需要一个form_id,这个是发起支付或者提交表单的时候才能获取到,提交表单得到的formId有效期7天且只能用一次,支付获得的预订单Id可以使用三次,公众号则不需要,不过小程序的模板消息是在‘服务通知’栏目里,公众号的模板消息是在公众号对话框里,直接上代码了
先需要封装一个将需要发送给用户的信息转换成json的方法
/@methodpackJsonmsg@参数@paramfirst头部@参数@paramremark说明@参数@return@返回类型:JSONObject/publicJSONObjectJsonMsg(){JSONObjectjson=newJSONObject();try{JSONObjectjsonFirst=newJSONObject();jsonFirst.put("value","xxxx");jsonFirst.put("color","#173177");json.put("first",jsonFirst);/信息部分JSON/JSONObjectk1=newJSONObject();k1.put("value",“xx”);k1.put("color","#173177");json.put("keyword1",k1);JSONObjectk2=newJSONObject();k2.put("value",“xx”);k2.put("color","#173177");json.put("keyword2",k2);//具体模板消息有几个参数就写几个可查看小程序后台模板消息JSONObjectjsonRemark=newJSONObject();jsonRemark.put("value","xxxxx");jsonRemark.put("color","#173177");json.put("Remark",jsonRemark);}catch(JSONExceptione){e.printStackTrace();}returnjson;}封装好主要信息就可以发送了
/@methodsendWechatmsgToUser@描述:TODO(发送模板信息给用户)@参数@paramtouser用户的openid@参数@paramtemplat_id信息模板id@参数@paramurl用户点击详情时跳转的url@参数@paramtopcolor模板字体的颜色@参数@paramdata模板详情变量Json格式@参数@return@返回类型:String/publicStringsendWechatmsgToUser(){Stringtmpurl="https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=ACCESS_TOKEN";//公众号的发送模板消息连接是:https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=accessToken换成自己公众号的就好StringaccessToken="";//获取的accessToken有效期为2小时可以存储在库中,定时更新JSONObjectjson=newJSONObject();try{json.put("touser",openId);//所要发送的用户openIdjson.put("template_id","xxx小程序后台的模板Id");json.put("page","pages/index/index");//点击模板可以跳转到小程序的具体界面json.put("form_id",formId);//用户的fromId或者预订单Idjson.put("topcolor","#173177");json.put("data",data);//这个data可以直接调用上文的JsonMsg方法生成所需要发送给用户的信息}catch(JSONExceptione){e.printStackTrace();}/公众号模板消息在发送给微信服务器的信息和小程序有一些不一样json.put("miniprogram",“此处json对象中放入小程序的appid和具体界面地址如:pages/index/index点击模板消息是可以直接进入小程序”);json.put("url","此处填写的url可以跳转到需要连接的地址,如果是支付的模板消息就可以跳转到该用户的支付详情");///http带上json文件发起请求百度一下很多下文也放一个Stringresult=httpsRequest(url,"POST",json.toString());try{JSONObjectresultJson=JSON.parseObject(result);System.out.println("模板消息返回数据:"+resultJson);Stringerrmsg=(String)resultJson.get("errmsg");if(!"ok".equals(errmsg)){//如果为errmsg为ok,则代表发送成功,公众号推送信息给用户了。return"error";}}catch(JSONExceptione){e.printStackTrace();}return"success";}http携带json请求
/http请求方法@paramrequestUrl@paramrequestMethod@paramoutputStr@return/publicStringhttpsRequest(StringrequestUrl,StringrequestMethod,StringoutputStr){try{URLurl=newURL(requestUrl);HttpsURLConnectionconn=(HttpsURLConnection)url.openConnection();conn.setDoOutput(true);conn.setDoInput(true);conn.setUseCaches(false);//设置请求方式(GET/POST)conn.setRequestMethod(requestMethod);conn.setRequestProperty("content-type","application/x-www-form-urlencoded");//当outputStr不为null时向输出流写数据if(null!=outputStr){OutputStreamoutputStream=conn.getOutputStream();//注意编码格式outputStream.write(outputStr.getBytes("UTF-8"));outputStream.close();}//从输入流读取返回内容InputStreaminputStream=conn.getInputStream();InputStreamReaderinputStreamReader=newInputStreamReader(inputStream,"utf-8");BufferedReaderbufferedReader=newBufferedReader(inputStreamReader);Stringstr=null;StringBufferbuffer=newStringBuffer();while((str=bufferedReader.readLine())!=null){buffer.append(str);}//释放资源bufferedReader.close();inputStreamReader.close();inputStream.close();inputStream=null;conn.disconnect();returnbuffer.toString();}catch(ConnectExceptionce){System.out.println("连接超时:{}");}catch(Exceptione){System.out.println("https请求异常:{}");}returnnull;}记录模板消息发送方式
最新资讯
-

小程序制作平台选型踩坑记录:2026年五大主流方案横向对比
2026 年微信小程序月活达 10.7 亿、覆盖 108 个行业,本次横向对比即速应用、乔拓云、凡科、有赞、微盟五大主流平台,分三阶段给出选型结论,核心聚焦成本、扩展性、运营能力三大维度。 -

即速应用,赋能企业玩转微信小程序智慧经营
作为国内领军的智慧商业经营服务商,即速应用始终秉承“让每个企业都拥有自己的智慧店铺”的愿景,持续赋能更多企业玩转智慧经营。即速应用旗下拥有“小程序搭建工具-即速应用”、“私域流量专家-即客云”等产品,帮助商家打通互联网全生态营销闭环。 -

即客云2.0重磅更新,让微信小程序运营更简单!
即客云作为一款基于企业微信的第三方工具,现从多维度提供超过30种功能,自上线以来,已服务多家企业,受到一致好评。近期,我们根据客户反馈和市场调研正式推出升级版 即客云2.0!更新了私域运营SOP,群日历功能,批量拓客,客户雷达,消息推送,个人欢迎语,帮助企业更好运用企业微信;同时提升了社群运营工作标准化,提升运营效率,帮助企业实现客户增长,玩转私域流量。










