公众号发送模板消息时出现以下错误信息:
{"errcode":47001,"errmsg":"data format error"}
数据格式错误?
解决方法:
- 一、不能包含json字符串
注意是不能包含双引号的json串, 单引号没问题,所以可以使用fastjson转换
JSON.toJSONString("包含双引号的json字符串", SerializerFeature.UseSingleQuotes);
- 二、不能有换行符
\n
这个不是很理解,因为官方文档里面写了可以使用\n
,如下图,
但我测试发现不行,所以不知道怎么回事,最后解决方式就是利用正则把\n
去掉,
Pattern p = Pattern.compile("\s*|t|r|n");
Matcher m = p.matcher(msg);
msg = m.replaceAll("");
如有好的解决方法,请不吝赐教