小程序消息推送问题总结

本文总结了在进行微信小程序消息推送时遇到的乱码问题及其解决方案,包括IDE编码设置、字符串转码、URL编码以及百度搜索到的正确做法。另外,还提及了微信小程序推送报错,指出该错误与时间戳验证失败有关,解决方案是调整服务器时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微信小程序推送乱码问题

2018-09-08 今天在做微信消息推送时,消息内容乱码,如下图:

首先,想到的是idea的编码方式,在file–>setting–>editor–>file encodings下下拉框均选择utf-8

其次,想到的是string字符串转码问题,通过new String(str.getBytes(“gbk”),“UTF-8”);在微信上显示的变为了问号。???
然后,猜测会不会是在拼接url时中文编码问题,于是使用URLEncoder.encode(“内容”);在微信上显示的变为了各种百分号。。。。
最后,在百度上搜索“微信消息推送乱码”,参考:java微信 客服接口-发消息 中文乱码 成功解决问题

将原有代码 pw = new PrintWriter(connection.getOutputStream());
改为

OutputStreamWriter outWriter = 
new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
    pw = new PrintWriter(outWriter);

全部代码如下:

String result = "";
PrintWriter pw = null;
BufferedReader br = null;
try {
    URL realUrl = new URL(requestUrl);
    HttpsURLConnection connection = (HttpsURLConnection)realUrl.openConnection();
    connection.setDoOutput(true);
    connection.setDoInput(true);
    connection.setRequestMethod("POST");
    connection.setRequestProperty("content-type", "application/x-www-form-urlencoded");
    // 获取URLConnection对象对应的输出流
    OutputStreamWriter outWriter 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值