收藏
回答

消息模板

推送给用户的消息通知,点击为什么进入不到小程序里了?


最后一次编辑于  2018-03-07  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

11 个回答

  • 小白是鱼骨头啊丶
    小白是鱼骨头啊丶
    2018-03-30

    没毛病,应该还是路径的问题,你在pages前面加个/试试,

    2018-03-30
    赞同
    回复
  • 赵琰
    赵琰
    2018-03-30

                            Template tem = new Template();

    tem.setTemplateId("");

    tem.setToUser(openid);

    tem.setFormId(order.getFormId());

    tem.setPage("pages/index/index");

    List<TemplateParam> paras = new ArrayList<TemplateParam>();

    paras.add();

    paras.add();

    paras.add();

    paras.add(new TemplateParam();

    paras.add(new TemplateParam();

    paras.add(new TemplateParam());

    tem.setTemplateParamList(paras);

    boolean send = TemplateUtil.sendTemplateMsg(token.getAccessToken(), tem);


    public class Template {


    private String toUser;


    private String templateId;


    private String page;

    private String formId;

    private String transactionId;


    // 参数列表

    private List<TemplateParam> templateParamList;


    private Integer id;

    private long succ;


    public String getTransactionId() {

    return transactionId;

    }


    public void setTransactionId(String transactionId) {

    this.transactionId = transactionId;

    }


    public Integer getId() {

    return id;

    }


    public void setId(Integer id) {

    this.id = id;

    }


    public long getSucc() {

    return succ;

    }


    public void setSucc(long succ) {

    this.succ = succ;

    }


    public String getToUser() {

    return toUser;

    }


    public void setToUser(String toUser) {

    this.toUser = toUser;

    }


    public String getTemplateId() {

    return templateId;

    }


    public void setTemplateId(String templateId) {

    this.templateId = templateId;

    }


    public String toJSON() {

    StringBuffer buffer = new StringBuffer();

    buffer.append("{");

    buffer.append(String.format("\"touser\":\"%s\"", this.toUser)).append(",");

    buffer.append(String.format("\"template_id\":\"%s\"", this.templateId)).append(",");

    buffer.append(String.format("\"url\":\"%s\"", this.page)).append(",");

    buffer.append(String.format("\"form_id\":\"%s\"", this.formId)).append(",");

    buffer.append("\"data\":{");

    TemplateParam param = null;

    for (int i = 0; i < this.templateParamList.size(); i++) {

    param = templateParamList.get(i);

    // 判断是否追加逗号

    if (i < this.templateParamList.size() - 1) {


    buffer.append(String.format("\"%s\": {\"value\":\"%s\",\"color\":\"%s\"},", param.getName(),

    param.getValue(), param.getColor()));

    } else {

    buffer.append(String.format("\"%s\": {\"value\":\"%s\",\"color\":\"%s\"}", param.getName(),

    param.getValue(), param.getColor()));

    }


    }

    buffer.append("}");

    buffer.append("}");

    return buffer.toString();

    }


    public List<TemplateParam> getTemplateParamList() {

    return templateParamList;

    }


    public void setTemplateParamList(List<TemplateParam> templateParamList) {

    this.templateParamList = templateParamList;

    }


    public String getPage() {

    return page;

    }


    public void setPage(String page) {

    this.page = page;

    }


    public String getFormId() {

    return formId;

    }


    public void setFormId(String formId) {

    this.formId = formId;

    }  

      

    }


    package com.mall.sms.send.vo;


    public class TemplateParam {

    // 参数名称  

        private String name;  

        // 参数值  

        private String value;  

        // 颜色  

        private String color;  

          

        public TemplateParam(String name,String value,String color){  

            this.name=name;  

            this.value=value;  

            this.color=color;  

        }  

        public String getName() {  

            return name;  

        }  

      

        public void setName(String name) {  

            this.name = name;  

        }  

      

        public String getValue() {  

            return value;  

        }  

      

        public void setValue(String value) {  

            this.value = value;  

        }  

      

        public String getColor() {  

            return color;  

        }  

      

        public void setColor(String color) {  

            this.color = color;  

        }  

    }

    public static boolean sendTemplateMsg(String token,Template template){  

            

            boolean flag=false;  

              

            String requestUrl="https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=ACCESS_TOKEN";  

            requestUrl=requestUrl.replace("ACCESS_TOKEN", token);  

            JSONObject jsonResult=CommonUtil.httpsRequest(requestUrl, "POST", template.toJSON());

            System.out.println(jsonResult);

            if(jsonResult!=null){  

                int errorCode=jsonResult.getInt("errcode");  

                String errorMessage=jsonResult.getString("errmsg");  

                if(errorCode==0){  

                    flag=true;  

                }else{  

                    System.out.println("模板消息发送失败:"+errorCode+","+errorMessage);  

                    flag=false;  

                }  

            }  

            return flag;  

              

    }

    }


    2018-03-30
    赞同
    回复
  • 小白是鱼骨头啊丶
    小白是鱼骨头啊丶
    2018-03-30

    有没有完整的代码段我帮你看下

    2018-03-30
    赞同
    回复
  • 赵琰
    赵琰
    2018-03-30

    最开始就是这样写的  也是进不去

    2018-03-30
    赞同
    回复
  • 小白是鱼骨头啊丶
    小白是鱼骨头啊丶
    2018-03-30

    从pages开始操作文件路径,比如首页“pages/index/index”

    2018-03-30
    赞同
    回复
  • 赵琰
    赵琰
    2018-03-30

    我想就是进入主页  改怎么写

    2018-03-30
    赞同
    回复
  • 小白是鱼骨头啊丶
    小白是鱼骨头啊丶
    2018-03-30

    你写的page参数按照我给你的格式写,单单一个index肯定是不行的

    2018-03-30
    赞同
    回复
  • 赵琰
    赵琰
    2018-03-30
    {  "touser": "OPENID",  
      "template_id": "TEMPLATE_ID", 
      "page": "index",          
      "form_id": "FORMID",         
      "data": {      "keyword1": {          "value": "339208499", 
              "color": "#173177"
          }, 
          "keyword2": {          "value": "2015年01月05日 12:30", 
              "color": "#173177"
          }, 
          "keyword3": {          "value": "粤海喜来登酒店", 
              "color": "#173177"
          } , 
          "keyword4": {          "value": "广州市天河区天河路208号", 
              "color": "#173177"
          } 
      },  "emphasis_keyword": "keyword1.DATA" }

    api接口 给的是这样的  我是按照这样写的  也是不行

    2018-03-30
    赞同
    回复
  • 小白是鱼骨头啊丶
    小白是鱼骨头啊丶
    2018-03-30


    按官方文档操作比较好点,

    "page: 'pages/content/content?aid=' + this.data.aid"

    你这方法包裹没有具体代码段看不出来问题


    2018-03-30
    赞同
    回复
  • 赵琰
    赵琰
    2018-03-30

    tem.setPage("pages/index/index");

    已经放上去了

    2018-03-30
    赞同
    回复

正在加载...