微信端獲取用戶信息(思路)


微信公眾號越來越多,對於我們程序員來說,也越來越需要了解微信端接口開發,下面是微信用戶進入公眾號后,公眾號獲取用戶信息的思路。

當然了,我有代碼,這里就只貼一點,主要的還是流程和查閱微信開發文檔。

appid和secret是登錄微信公眾號里面設置的,固定的,code是微信用戶同意協議返回給前端的code,后台通過這三個參數,訪問url獲取openid和access_token,然后再根據url訪問微信接口獲取用戶信息。

代碼:

 1 String requestUrl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid="
 2                 + CommonConstants.getProperty("wxAppId")
 3                 +"&secret=" + CommonConstants.getProperty("secret") + "&code="
 4                 + notice.getCode() + "&grant_type=authorization_code";
 5         //獲取access_token
 6         String respResult = HttpUtil.sendGetForWeChatOpen(requestUrl);
 7         Map<?, ?> map = RustFastJsonUtil.jsonTOmap(respResult);
 8         logger.info("微信獲取access_token返回結果:" + respResult);
 9 
10         String openid = String.valueOf(map.get("openid"));
11         logger.debug("openId:" + openid);
12         String access_token = String.valueOf(map.get("access_token"));
13         logger.debug("access_token:" + access_token);

以上代碼,我們就獲取到了微信openId,下面獲取用戶信息:

1 logger.info("-------->發送請求獲取用戶信息<-------");
2 
3         requestUrl = "https://api.weixin.qq.com/sns/userinfo?access_token=" + access_token + "&openid=" + openid + "&lang=zh_CN";
4 
5         String baseInfo = HttpUtil.sendGetForWeChatOpen(requestUrl);
6         logger.info("baseInfo:" + baseInfo);
7         String haha = "";
8         logger.debug("------->開始采用ISO-8859-1編碼格式進行轉碼<-----");
9         haha = new String(baseInfo.getBytes("ISO-8859-1"), "UTF-8");

微信用戶信息就在"haha"里面。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM