微信公众号开发--获取用户信息中文乱码的解决方案
2016-06-08 13:40
471 查看
在微信开发中我们会经常需要获取用户的信息。
微信给我们提供了获取用户信息的api,
地址为
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
将其中的access_token替换为我们的access_token
openid为关注用户的openid就可以获取到用户的信息了。
而用java程序获取的结果也是一样的
我们对获取的结果进行编码
关键代码
获取自定义菜单乱码也是一样的解决方法
HttpUtil工具类参考
微信给我们提供了获取用户信息的api,
地址为
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
将其中的access_token替换为我们的access_token
openid为关注用户的openid就可以获取到用户的信息了。
问题描述
不过获取到的数据却是中文乱码而用java程序获取的结果也是一样的
解决方案
这个乱码主要是由于微信那边采用的是“ISO-8859-1”编码造成的。我们对获取的结果进行编码
关键代码
String token = AccessTokenTool.getAccessToken(); String URL = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN"; // 原始json String jsonResult = HttpUtil.sendGet(URL.replace("OPENID", openid).replace("ACCESS_TOKEN", token)); System.out.println(jsonResult); // 编码后的json String json = new String(jsonResult.getBytes("ISO-8859-1"), "UTF-8"); System.out.println(json);
获取自定义菜单乱码也是一样的解决方法
参考文献
获取用户基本信息(UnionID机制)HttpUtil工具类参考
相关文章推荐
- Linux下修改MySQL编码的方法
- cmd模式下中文乱码的解决方法(注册表)
- 解决mysql5中文乱码问题的方法
- EBS xml publisher中文乱码问题及解决办法
- ExtJS中文乱码之GBK格式编码解决方案及代码
- 解决MySQL客户端输出窗口显示中文乱码问题的办法
- php url地址栏传中文乱码解决方法集合
- 常见php与mysql中文乱码问题解决办法
- 网站开发防止中文乱码需要了解的codepage的重要性小结
- php中json_encode UTF-8中文乱码的更好解决方法
- js escape,unescape解决中文乱码问题的方法
- js url传值中文乱码之解决之道
- JQuery异步获取返回值中文乱码的解决方法
- Linux php 中文乱码的快速解决方法
- JSP中文乱码常见3个例子及其解决方法
- 如何解决JQuery ajaxSubmit提交中文乱码
- jquery向.ashx文件post中文乱码问题的解决方法
- 通过过滤器(Filter)解决JSP的Post和Request中文乱码问题
- opensuse下如何解决jfreechart中文乱码的问题
- DOS命令行窗口mysql中文显示乱码问题解决方法