微信开发-获取用户关注公众号的状态(是否关注公众号)

论坛 期权论坛 脚本     
匿名网站用户   2020-12-20 17:48   11   0


公司业务需要获取用户观众公众号状态,即确定进入系统的用户是否关注了该公众号,根据这个结果进行相应的动作。

获取用户信息中有subscribe这个字段,其中==1表示关注了该公众号,==0表示没有关注该公众号。

通过调研,看文档

点击打开链接

点击打开链接2

调研,只有在微信的unionid机制下才能获取这个值,而在sns(我称之为)的模式下只能获得用户头像、昵称信息等信息

unionid机制下的信息:

{
   "subscribe": 1, 
   "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M", 
   "nickname": "Band", 
   "sex": 1, 
   "language": "zh_CN", 
   "city": "广州", 
   "province": "广东", 
   "country": "中国", 
   "headimgurl":  "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4
eMsv84eavHiaiceqxibJxCfHe/0",
  "subscribe_time": 1382694957,
  "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
  "remark": "",
  "groupid": 0,
  "tagid_list":[128,2]
}
sns机制下的信息:

{
   "openid":" OPENID",
   " nickname": NICKNAME,
   "sex":"1",
   "province":"PROVINCE"
   "city":"CITY",
   "country":"COUNTRY",
    "headimgurl":    "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/46", 
 "privilege":[
 "PRIVILEGE1"
 "PRIVILEGE2"
    ],
    "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL"
}
通过上文给出的超链可以看出两种方式的请求url略有不一样,参数到是没有什么差别。

下文给出sns这种方式java代码实现:

HttpUriRequest httpUriRequest = RequestBuilder.get()
    .setUri("https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code")
    .build();




分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1136255
帖子:227251
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP