一、微信获取用户组接口简介

  1、请求

  该请求也是GET方式请求。请求的url格式如下:

  https://api.weixin.qq.com/cgi-bin/groups/get?access_token=ACCESS_TOKEN

  其中ACCESS_TOKEN是之前我们获取到的。

  2、响应

  该响应也是以json方式返回的

  正确的时候返回的数据:

{
"groups": [
{
"id": 0,
"name": "未分组",
"count": 72596
},
{
"id": 1,
"name": "黑名单",
"count": 36
},
{
"id": 2,
"name": "星标组",
"count": 8
}
  ]
} 

  groups,对应返回的用户组信息数组;id,用户组id;name,用户组名称;count,用户数量。

  错误的时候返回的数据:{"errcode":40013,"errmsg":"invalid appid"}

  errcode,为错误代码,errmsg为错误信息

  具体api可查看文档:http://mp.weixin.qq.com/wiki/index.php?title=%E5%88%86%E7%BB%84%E7%AE%A1%E7%90%86%E6%8E%A5%E5%8F%A3

二、关于java代码的调用

  这里与获取access_token一样使用的都是apache的http组件httpcomponents-client。

三、代码实现

 import java.util.Arrays;

 import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils; import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser; public class Test
{
public static final String GET_TOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token";// 获取access
public static final String GET_USER_GROUP = "https://api.weixin.qq.com/cgi-bin/groups/get"; // url
public static final String APP_ID = "wxa549b28c24cf341e";
public static final String SECRET = "78d8a8cd7a4fa700142d06b96bf44a37"; /**
* 获取用户组信息
*
* @param url
* 访问url
* @param token
* access_token
* @return id字符串,每个id以,分割
*/
public static String getGroups(String url, String token)
{
String groupurl = String.format("%s?access_token=%s", url, token);
System.out.println(groupurl);
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(groupurl);
String result = null;
try
{
HttpResponse res = client.execute(get);
String responseContent = null; // 响应内容
HttpEntity entity = res.getEntity();
responseContent = EntityUtils.toString(entity, "UTF-8");
JsonParser jsonparer = new JsonParser();// 初始化解析json格式的对象
JsonObject json = jsonparer.parse(responseContent)
.getAsJsonObject();// 将json字符串转换为json对象
if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK)// 成功返回消息
{
if (json.get("errcode") == null)// 不存在错误消息,成功返回
{
JsonArray groups = json.getAsJsonArray("groups"); // 返回对象数组
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < groups.size(); i++)
{
buffer.append(groups.get(i).getAsJsonObject().get("id")
.getAsString()
+ ",");
}
result = buffer.toString();
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{ // 关闭连接 ,释放资源
client.getConnectionManager().shutdown();
return result;
}
} public static void main(String[] args) throws Exception
{
System.out.println("=========1获取token=========");
String accessToken = getToken(GET_TOKEN_URL, APP_ID, SECRET);// 获取token在微信之一中的方法获取token
if (accessToken != null)// token成功获取
{
String ids = getGroups(GET_USER_GROUP, accessToken);
if (ids != null)
{
String[] idarray = ids.split(",");// 用户组id数组
System.out.println(ids);
}
}
}
}

  成功调用或

java微信接口之二—获取用户组的更多相关文章

  1. java微信接口之五—消息分组群发

    一.微信消息分组群发接口简介 1.请求:该请求是使用post提交地址为: https://api.weixin.qq.com/cgi-bin/message/mass/sendall?access_t ...

  2. java微信接口之四—上传素材

    一.微信上传素材接口简介 1.请求:该请求是使用post提交地址为: https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token=A ...

  3. java微信接口之三—上传多媒体文件

    一.微信上传多媒体接口简介 1.请求:该请求是使用post提交from来实现的,我们可以在网页上进行表单提交来实现.地址为: http://file.api.weixin.qq.com/cgi-bin ...

  4. java 微信自定义菜单 java微信接口开发 公众平台 SSM redis shiro 多数据源

    A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成 ...

  5. java微信接口之——获取access_token

    本文转自http://www.cnblogs.com/always-online/category/598553.html 一.微信获取access_token接口简介 1.请求:该请求是GET方式请 ...

  6. Java并发学习之二——获取和设置线程信息

    本文是学习网络上的文章时的总结,感谢大家无私的分享. Thread类的对象中保存了一些属性信息可以帮助我们辨别每个线程.知道它的一些信息 ID:每一个线程的独特标示: Name:线程的名称: Prio ...

  7. Java 微信登录授权后获取微信用户信息昵称乱码问题解决

    String getUserInfoUrl = "https://api.weixin.qq.com/sns/userinfo?access_token="+access_toke ...

  8. Java 获取微信小程序二维码(可以指定小程序页面 与 动态参数)

    一.准备工作 微信公众平台接口调试工具 小程序的唯一标识(appid) 小程序的密钥(secret) 二.获取access_token 打开微信公众平台接口调试工具,在参数列表中输入小程序的appid ...

  9. python-request 实现企业微信接口自动化-1(DDT)

    环境准备 python+requests 读取企业微信api开发文档,得知调用企业微信接口必须先获取企业微信的accesstoken是通过 ("corpid","&quo ...

随机推荐

  1. CentOS6.5菜鸟之旅:安装SUN JDK1.7和Tomcat7

    一.前言   CentOS6.5系统自带Open JDK1.7.1.6和1.5,但OpenJDK部分内容与SUN JDK不兼容,因此打算重新安装SUN JDK1.7来开发. 二.卸载Open JDK ...

  2. adaboost原理和实现

    上两篇说了决策树到集成学习的大概,这节我们通过adaboost来具体了解一下集成学习的简单做法. 集成学习有bagging和boosting两种不同的思路,bagging的代表是随机森林,boosti ...

  3. Qt Style Sheet实践(二):组合框QComboBox的定制

    导读 组合框是一个重要且应用广泛的组件,一般由两个子组件组成:文本下拉单部分和按钮部分.在许多既需要用户选择.又需要用户手动输入的应用场景下,组合框能够很好的满足我们的需求.如我们经常使用的聊天软件Q ...

  4. LeetCode - 30. Substring with Concatenation of All Words

    30. Substring with Concatenation of All Words Problem's Link --------------------------------------- ...

  5. c++容器(vector、list、deque)

    vector ,deque 和 list 顺序性容器: 向量 vector :   是一个线性顺序结构.相当于数组,但其大小可以不预先指定,并且自动扩展.它可以像数组一样被操作,由于它的特性我们完全可 ...

  6. Python基础:映射(字典)

    一.概述 映射类型(Mapping Types)是一种关联式的容器类型,它存储了对象与对象之间的映射关系. 字典(dict)是Python中唯一的映射类型,它是存储了一个个 键值对(由 键 映射到 值 ...

  7. KTV点歌系统

    经过十多天的艰苦奋战,MyKTV点歌系统终于成型,从刚开始接到项目的茫然,到完成项目时的喜悦,整个过程的艰辛和付出只有自己知道.虽然这个项目还有许多需要完善的地方,譬如添加歌词信息,实现窗体的美化等, ...

  8. 404 Not Found错误页面的解决方法和注意事项

    最近这段时间一直忙于整理网站的错误页面,期间整理了很多关于404 Not Found错误页面的知识,加之最近也在帮团队新来的人员培训seo优化知识,所以在此借助马海祥博客的平台就拿出来跟大家一起分享一 ...

  9. 页面UI注意事项,你在乎吗?

    早上打开微信,看到一篇文章,下面就和大家分享一下,该文章属于前端文章系列,希望做后台开发系统的程序员也可以学习一下,只会写代码把功能实现是第一,接下来也要把界面做做好. 现在的界面风格对于手机而言,一 ...

  10. (旧)子数涵数·PS——换脸

    一.打开Photoshop,打开下载好的两张素材图(均在百度下载的). 二.选中人物脸的部分,不需要很精确(哪种抠图方式都行,我用的是矩形选框工具),再使用移动工具(快捷键为V,或者按着Ctrl),将 ...