微信公众平台标签开发之删除用户标签(4)

2017年09月23日 08:26 | 1707次浏览 作者原创 版权保护

我们在前几篇介绍了微信公众平台的标签创建,编辑,查询,并且我们已经创建了一个名字为"人陕西",ID号为"101"

的标签,本节就借助此标签利用微信删除标签接口删除此标签。

一、删除标签接口说明

请注意,当某个标签下的粉丝超过10w时,后台不可直接删除标签。此时,开发者可以对该标签下的openid列表,先进行取消标签的操作,直到粉丝数不超过10w后,才可直接删除该标签。

接口调用请求说明

http请求方式:POST(请使用https协议)https://api.weixin.qq.com/cgi-bin/tags/delete?access_token=ACCESS_TOKEN
POST数据格式:JSON
POST数据例子:
{
  "tag":{
       "id" : 134
  }
}

返回说明

{
  "errcode":0,
  "errmsg":"ok"
}

错误码说明

至此, 接口调用说明已经介绍完毕,接下来我们介绍通过java代码实现微信标签删除功能。

二、java代码实现删除标签接口

1,获取access_token

/***
     * 获取token  V型知识库 www.vxzsk.com
     * @param appid 应用id
     * @param appSecret 应用秘钥
     * @return
     */
    public static String getToken(String appid,String appSecret){
         String url ="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+appid+"&secret="+appSecret+"";
         String backData=TestMenu.sendGet(url, "utf-8", 10000);
         JSONObject jsonObject = JSONObject.fromObject(backData);
       String access_token=jsonObject.getString("access_token");//调用接口凭证
       return access_token;
    }

appid,appSecret分别为应用id和应用秘钥,读者可登陆微信公众平台管理中心查阅。

sendGet方法

/***
    * 模拟get请求
    * @param url
    * @param charset
    * @param timeout
    * @return
    */
    public static String sendGet(String url, String charset, int timeout)
     {
       String result = "";
       try
       {
         URL u = new URL(url);
         try
         {
           URLConnection conn = u.openConnection();
           conn.connect();
           conn.setConnectTimeout(timeout);
           BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), charset));
           String line="";
           while ((line = in.readLine()) != null)
           {
             
             result = result + line;
           }
           in.close();
         } catch (IOException e) {
           return result;
         }
       }
       catch (MalformedURLException e)
       {
         return result;
       }
       
       return result;
     }

2,调用微信删除接口代码实现

/****
     * 删除标签 www.vxzsk.com
     * @param access_token
     * @param params
     * @return
     */
    public static String deleteTags(String access_token,String params){
    	String update_url="https://api.weixin.qq.com/cgi-bin/tags/delete?access_token=";//删除标签接口
    	String jsonData = TestMenu.sendPost(update_url+access_token, params);
		System.out.println("请求接口返回"+jsonData);
		return jsonData;
    }

第一个参数access_token就是我们第一步获取得到的,此参数是调用微信接口凭证,有效期为7200秒,过期要重新获取。

第二个参数params为编辑已存在的标签参数格式。注意参数中的标签id号为101

//删除标签参数
		String params="{"
               +"\"tag\":{"
               +"\"id\" : 101"
               +"}}";

sendPost方法

/***
    * 模拟get请求
    * @param url
    * @param charset
    * @param timeout
    * @return
    */
    public static String sendGet(String url, String charset, int timeout)
     {
       String result = "";
       try
       {
         URL u = new URL(url);
         try
         {
           URLConnection conn = u.openConnection();
           conn.connect();
           conn.setConnectTimeout(timeout);
           BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), charset));
           String line="";
           while ((line = in.readLine()) != null)
           {
             
             result = result + line;
           }
           in.close();
         } catch (IOException e) {
           return result;
         }
       }
       catch (MalformedURLException e)
       {
         return result;
       }
       
       return result;
     }

3,java代码main方法调用实现

public static void main(String[] args) {
		String appId = AppConst.APP_ID;//应用id
		String appSecret = AppConst.APPSECRET;//应用秘钥
		//1,获取access_token
		String access_token = TestMenu.getToken(appId, appSecret);
		System.out.println("token值:"+access_token);
		//2,删除标签参数
		String params="{"
               +"\"tag\":{"
               +"\"id\" : 101"
               +"}}";
		 
		String jsonData = TestMenu.deleteTags(access_token, params);
		System.out.println("删除标签返回:"+jsonData);
}

应用id和应用秘钥替换为自己的即可。

在我们执行main方法之前我们先登录示例中的微信公众管理平台查看要删除的id号为101的标签。

执行main方法后的效果

图2显示 执行main方法后,人陕西这个标签已经被删除了。



小说《我是全球混乱的源头》
此文章本站原创,地址 https://www.vxzsk.com/209.html   转载请注明出处!谢谢!

感觉本站内容不错,读后有收获?小额赞助,鼓励网站分享出更好的教程