JAVA微信开发:[17]如何获取所有关注用户
該方法獲取所有關注公共賬號的微信用戶的openId集合,?再通過openId集合既可以獲取所有的用戶的信息。??
/**
? ? * 獲取所有的關注用戶
? ? *?
? ? * @return
? ? */
? ?public ?List<String> getAllWeiXinUser() {
? ? ? ?GetExistAccessToken getExistAccessToken = GetExistAccessToken.getInstance();
? ? ? ?String accessToken = getExistAccessToken.getExistAccessToken();
? ? ? ?List<String> openIds = new ArrayList<String>();
? ? ? ?// 上傳文件請求路徑
? ? ? ?String action = "https://api.weixin.qq.com/cgi-bin/user/get?access_token="
? ? ? ? ? ? ? ?+ accessToken;
? ? ? ?try {
? ? ? ? ? ?URL urlGet = new URL(action);
? ? ? ? ? ?HttpURLConnection http = (HttpURLConnection) urlGet
? ? ? ? ? ? ? ? ? ?.openConnection();
? ? ? ? ? ?http.setRequestMethod("GET"); // 必須是get方式請求
? ? ? ? ? ?http.setRequestProperty("Content-Type",
? ? ? ? ? ? ? ? ? ?"application/x-www-form-urlencoded");
? ? ? ? ? ?http.setDoOutput(true);
? ? ? ? ? ?http.setDoInput(true);
? ? ? ? ? ?System.setProperty("sun.net.client.defaultConnectTimeout", "30000");// 連接超時30秒
? ? ? ? ? ?System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // 讀取超時30秒
? ? ? ? ? ?http.connect();
? ? ? ? ? ?InputStream is = http.getInputStream();
? ? ? ? ? ?int size = is.available();
? ? ? ? ? ?byte[] jsonBytes = new byte[size];
? ? ? ? ? ?is.read(jsonBytes);
? ? ? ? ? ?String result = new String(jsonBytes, "UTF-8");
? ? ? ? ? ?JSONObject jsonObj = new JSONObject(result);
? ? ? ? ? ?System.out.println("users" + jsonObj.get("data"));
? ? ? ? ? ?JSONObject json1 = new JSONObject(jsonObj.get("data").toString());
? ? ? ? ? ?System.out.println(json1.toString());
? ? ? ? ? ?JSONArray json2 = new JSONArray(json1.get("openid").toString());
? ? ? ? ? ?for (int i = 0; i < json2.length(); i++) {
? ? ? ? ? ? ? ?openIds.add(i, json2.getString(i));
? ? ? ? ? ?}
? ? ? ?} catch (Exception e) {
? ? ? ? ? ?e.printStackTrace();
? ? ? ?}
? ? ? ?return openIds;
? ?}
總結
以上是生活随笔為你收集整理的JAVA微信开发:[17]如何获取所有关注用户的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android的DataBinding原
- 下一篇: 输入输出,数据类型,运算符