收藏
回答

发送设备消息报错?

String url1="https://api.weixin.qq.com/cgi-bin/message/device/subscribe/send?access_token="+access_token;

Map<String,Object> m =new LinkedHashMap<>();

//oWIHOJ1zMGQqOwIbiHpd97APq6XwYTQXjptjJk1PokU

m.put("template_id","oWIHOJ1zMGQqOwIbiHpd97APq6XwYTQXjptjJk1PokU");

m.put("sn", "HSN96-30");

m.put("page", page+"?id="+messageId);

ArrayList<String> openids = new ArrayList<>();

openids.add(openid);

m.put("to_openid_list", openids);

m.put("modelId", "5QZnhhm33NF-MIIjgr4oWg");

m.put("lang", "zh_CN");

Map<String,Object> data =new LinkedHashMap<>();

data.put("character_string2",new TemplateData("HSN96-30"));

data.put("time1",new TemplateData(DateStatisticsUtil.addYearsToDate(cellStorage.getStorageTime(),cellStorage.getStorageYears().intValue())));

data.put("enum_string4",new TemplateData("测试"));

m.put("data",data);

String str= BackEndHttpRequest.sendPost(url1, JsonUtils.ObjectToString(m));

System.out.println("请求内容:"+JsonUtils.ObjectToString(m));

Map maps = (Map) JSONObject.parseObject(str);

System.out.println(maps);

{"errcode":47003,"errmsg":"argument invalid! data.enum_string4.value is emp rid: 680b29d0-5009615b-4d24f410"}提示enum_string4有问题,

enum_string character_string有什么特殊要求吗,有具体的说明文档吗,character_string我也是才知道不能有中文汉字

回答关注问题邀请回答
收藏

2 个回答

  • cyber farmer
    cyber farmer
    07-22

    请问你这里的sn是 自定义的吗?m.put("sn", "HSN96-30"); 是否涉及 微信所说的 sn预注册?

    07-22
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    04-25

    模板的参数不能漏传。 empty是空了

    04-25
    有用
    回复 7
    查看更多(2)
登录 后发表内容