点此查看 微信公众号/微信网页/微信支付/企业微信/小程序开发合集及源代码下载

本文目录

  • 1. 公众号标签的概念
  • 2. 相关接口
  • 3. 代码编写
  • 4. 测试
    • 4.1 获取标签
    • 4.2 获取用户列表
    • 4.3 为用户添加标签
    • 4.4 查询标签
  • 5. 小结

1. 公众号标签的概念

用户关注我们的公众号后,我们可以给该用户赋予一个或者多个标签,便于区分用户群体。

这样的好处是,我们在群发消息的时候,指定发送用户的标签,这样消息就能群发给指定群体了。

2. 相关接口

我们封装了以下接口,可以实现标签的创建、获取、更新。

同时也封装了跟用户相关的接口,可以为用户添加、移除标签,或者查询用户已有的标签信息。

3. 代码编写

通过控制器开发API接口即可,相关功能均可直接调用WxMpService封装的方法实现。


/*** 标签控制器(标签管理、用户标签管理)*/
@Api(tags = "标签管理API")
@RestController
public class TagController {@Autowiredprivate WxMpService wxMpService;@ApiOperation(value = "获取标签")@PostMapping("/tagGet")public List<WxUserTag> tagGet() throws WxErrorException {List<WxUserTag> res = wxMpService.getUserTagService().tagGet();return res;}@ApiOperation(value = "创建标签")@PostMapping("/tagCreate")public WxUserTag tagCreate(@RequestParam("tagName") String tagName) throws WxErrorException {WxUserTag res = wxMpService.getUserTagService().tagCreate(tagName);return res;}@ApiOperation(value = "更新标签")@PostMapping("/tagUpdate")public boolean tagUpdate(@RequestParam("tagId") Long tagId, @RequestParam("tagName") String tagName) throws WxErrorException {Boolean res = wxMpService.getUserTagService().tagUpdate(tagId, tagName);return res;}@ApiOperation(value = "查询用户标签列表")@PostMapping("/userTagList")public List<Long> userTagList(@RequestParam("openid") String openid) throws WxErrorException {List<Long> tags = wxMpService.getUserTagService().userTagList(openid);return tags;}@ApiOperation(value = "批量为用户添加标签")@PostMapping("/batchTagging")public boolean batchTagging(@RequestParam("openids") String[] openids, @RequestParam("tagid") Long tagid) throws WxErrorException {return wxMpService.getUserTagService().batchTagging(tagid, openids);}@ApiOperation(value = "批量给用户移除标签")@PostMapping("/batchUntagging")public boolean batchUntagging(@RequestParam("openids") String[] openids, @RequestParam("tagid") Long tagid) throws WxErrorException {return wxMpService.getUserTagService().batchUntagging(tagid, openids);}
}

4. 测试

4.1 获取标签

首先我们调用/tagGet获取下标签信息,返回如下,说明我们的公众号有两个标签了,每个标签相关的人数也显示出来。

[{"id": 2,"name": "星标组","count": 1},{"id": 100,"name": "杀马特","count": 0}
]

4.2 获取用户列表

然后我们通过/userList获取用户列表,以便得到用户的openid,结果如下:

{"total": 1,"count": 1,"openids": ["oINiq6UqTiKqfXN3H6RmeKvvRnmw"],"nextOpenid": "oINiq6UqTiKqfXN3H6RmeKvvRnmw"
}

4.3 为用户添加标签

再然后,我们为该用户添加杀马特这个标签,对应id为100,所以调用/batchTagging为该用户添加标签,如下图我们输入参数:

执行后返回结果如下,返回true说明我们的接口调用成功了。

4.4 查询标签

接下来我们查询下该用户已有的标签,调用/userTagList,返回值如下,可见用户已经成功跟id=100的标签关联上了。

[2,100
]

5. 小结

本篇介绍了如何管理标签,同时介绍了如何管理用户的标签。

微信公众平台开发(14)--标签管理与用户标签管理相关推荐

  1. Senparc.Weixin.MP SDK 微信公众平台开发教程(十六):AccessToken自动管理机制

    在<Senparc.Weixin.MP SDK 微信公众平台开发教程(八):通用接口说明>中,我介绍了获取AccessToken(通用接口)的方法. 在实际的开发过程中,所有的高级接口都需 ...

  2. 微信公众平台开发-消息管理-发送模板消息

    一.模板说明 模板消息是在特定服务场景中向粉丝发送的消息,例如:信用卡刷卡通知,商品购买成功通知.不同的模板有不同的风格,某些字段可以由你来填充自己的内容(同时设定颜色),从而形成自己的消息.微信公众 ...

  3. Senparc.Weixin.MP SDK 微信公众平台开发教程(二十二):如何安装 Nuget(dll) 后使用项目源代码调试...

    最近碰到开发者问:我使用 nuget 安装了 Senparc.Weixin SDK,但是有一些已经封装好的过程想要调试,我又不想直接附加源代码项目,这样就没有办法同步更新了,我应该怎么办? 这其实是一 ...

  4. 微信公众平台开发:从零基础到ThinkPHP5高性能框架实践 Epub +Azw3 +Mobi

    image 下载地址...... 1.网站地址或点击阅读原文 https://51dr.cn/book/detail/28320 2.回复关键字 28320直接获取下载链接,公众号二维码请见文章末尾哦 ...

  5. 微信公众平台开发 mysql_微信公众平台开发数据库操作

    一.简介 前面讲解的功能开发都是简单的调用API 完成的,没有对数据库进行操作.在接下来的高级功能开发中,需要使用到数据库,所以在这一篇中,将对MySQL 数据库的操作做一下简单的介绍,以供读者参考. ...

  6. 微信公众平台开发(104) 自定义菜单扫一扫、发图片、发地理位置

    关键字:微信公众平台 自定义菜单 扫一扫 发图片 发地理位置 作者:方倍工作室 原文:http://www.cnblogs.com/txw1958/p/weixin-menu-new-type.htm ...

  7. Senparc.Weixin.MP SDK 微信公众平台开发教程(十八):Web代理功能

    在Senparc.Weixin.dll v4.5.7版本开始,我们提供了Web代理功能,以方便在受限制的局域网内的应用可以顺利调用接口. 有关的修改都在Senparc.Weixin/Utilities ...

  8. 第六篇 :微信公众平台开发实战Java版之如何自定义微信公众号菜单

    我们来了解一下 自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_to ...

  9. Senparc.Weixin.MP SDK 微信公众平台开发教程(九):自定义菜单接口说明

    Senparc.Weixin.MP SDK 微信公众平台开发教程(九):自定义菜单接口说明 原文:Senparc.Weixin.MP SDK 微信公众平台开发教程(九):自定义菜单接口说明 上一篇&l ...

  10. 微信公众平台开发(110) 微信连Wi-Fi

    微信连Wi-Fi是为商家的线下场所提供一套完整和便捷的微信连Wi-Fi的方案.商家接入微信连Wi-Fi后,顾客无需输入繁琐的Wi-Fi密码,通过微信扫二维码等方式即可快速上网.微信连Wi-Fi还帮助商 ...

最新文章

  1. spring boot(八)RabbitMQ使用
  2. How to Setup Replicated LevelDB Persistence in Apache ActiveMQ 5.9--转载
  3. 数字图像处理:第十一章基于特征向量的变换
  4. 防范网络*** 应用层防护是重点
  5. java中基本数据类型
  6. 同窗多年,一个无经验的应届生,一起转行做了软件测试并月薪8K
  7. 厉害了!图解 23 种设计模式,终于有人讲清楚了!面试揭秘
  8. ThingsBoard设备在线状态-active服务端属性分析
  9. android布局跑马灯,Android自定义跑马灯效果(适合任意布局)
  10. 百度地图开放平台天气预报查询API
  11. 教父:花半分钟就看透事物本质的人,和花一辈子都看不清本质的人,注定是截然不同的命运...
  12. rasp 系统_RASP相关的技术实现和产品介绍
  13. 文件系统大目录下的操作性能效率提升
  14. You Can’t Future-Proof Solutions
  15. 如何为iOS应用训练核心ML模型
  16. 解读全球云产业:一样的“云”,不一样的“推手”
  17. Adobe-字体名-字体family-对应关系
  18. Spring Cloud入门-Nacos实现注册和配置中心(Hoxton版本)
  19. abb机器人负载配置设定_ABB机器人【-配置设定】大全---人手一份-建议永久收藏!...
  20. 再谈奥巴马当选总统之前的身份

热门文章

  1. 《淘宝技术这十年》读书笔记
  2. ApacheCN 活动汇总 2019.8.23
  3. Linux中编译mdio命令,linux网络设备—mdio总线
  4. 模拟cmos集成电路设计之共源共栅电流镜
  5. Java解析XML字符串
  6. FileSplit.exe
  7. 给群联PS3111/inic6081量产工具添加闪存颗粒支持
  8. 娱乐视频直播背后的技术支持——DASH重构
  9. 恢复为TrustedInstaller权限
  10. 通讯录管理软件Cardhop for Mac