• 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;

       }

  • 相关阅读:
    [转]唐骏谈职场 —— 管理者要学会让员工感动
    [转]网站访问量剧增时解决方案
    vbscript:MsgBox参数说明
    验证输入内容是否为数字的简单方法
    页面加载自动跳转页面
    "未能写入输出文件“c:\windows\Microsoft.NET\Framework\v2.0.50727\Temporary AS"的解决办法
    BIND9源码分析奠基
    Trie树详解
    cuckoo hash
    BIND9源码分析之定时器timer
  • 原文地址:https://www.cnblogs.com/wanghuaijun/p/5918721.html
Copyright © 2020-2023  润新知