今天要实现一个功能是关于微信公众号推送消息给用户的,
一开始是在查接口文档。。。结果发现一脸懵逼,,然后就在git上找下demo
https://blog.csdn.net/panjianlongWUHAN/article/details/87855143
运行了下他的代码是可以了 不过他的格式是
我想做的是汇款成功通知给用户,然后就改了下格式
一开始是
然后在他代码里也改了下格式
但是我发现怎么也无法发送消息,一直debug就发现httpclient是能够执行execute方法的但就是无法发送,我就想着是不是格式的问题,然后我就改了消息模板的格式和里面代码的格式,但是因为不需要2个字段 我就注释了一个
buffer.append(String.format("\"%s\": {\"value\":\"%s\",\"color\":\"%s\"}", "keyword3", keyword_3_Content, keyword_3_Color));
我就发现还是怎么也发送不了了。。。。。。然后只能又还原他的代码再去一步步找。。。
试了很多次以后发现就一直报错了
然后又是慢慢debug 发现
今天不知道为什么。。。对着微信开发文档就能操作出来了。。。。感觉就都是一样的步骤,,
然后就接着去研究这个问题了,因为已经能对着接口文档写了并且还能直接用代码来发送请求而不仅仅是postman。所以这次找问题就简单多了,就猜测是不是格式问题,
{“touser”:“o3sHyvi_VXDZ4L024V1fIr5pb_Vg”,“template_id”:“FMFEUcEn6B_p9NwYdV0Zryhq_ISDnn7aMJ_0wPZbAQU”,“url”:“http://www.baidu.com”,“data”:{“first”: {“value”:“201daadadadasfsa9”,“color”:“null”},“keyword1”: {“value”:“20133”,“color”:“null”},}}
然后又去看了以前的bug,发现json最后多了**“,”**
所以只要去掉他,就可以了
buffer.deleteCharAt(b