记一次调试微信订阅消息的坑

微信发送订阅消息文档

发送订阅消息 | 微信开放文档

按照文档说明的,一直报data param错误,编码47001,从程序中把请求参数扣出来,放到微信提供的工具里面调试

微信调试工具

然后报data参数要用string,转化为string,然后一直报

errmsg: "argument invalid! data.thing1.value is empty rid: 653a2924-3223baaf-1286759f"

errcode: 47003

最后看到一篇文章

【异常解决】“errcode“:47003,“errmsg“:“argument invalid! data.date4.value invalid rid:xxxxxx_No8g攻城狮的博客-CSDN博客

发现传送给微信要把json转化为字符串 

String s = JSONUtil.toJsonStr(param);
        String body = HttpUtil.createPost(sendUrl).body(s)
                .header("Content-type", "application/json")
                .execute()
                .charset("UTF-8")
                .body();

最后问题解决,所以那个工具真是坑,data参数其实要json,然后整个入参才转化为字符串

你可能感兴趣的:(微信)