如何判斷用戶有沒有關注訂閱號


收集整理的方法如下:

微信用戶訪問微信公眾號(訂閱號)的網頁時判斷用戶有沒有關注公眾號(訂閱號)

1、前提:

微信公眾號分為服務號和訂閱號,它們的接口權限各不相同;服務號可以通過網頁授權接口,用戶授權后獲取用戶的openid,通過用戶的openid獲取用戶的信息,用戶的信息里包含用戶對公眾號的關注字段。但是,訂閱號沒有相應的網頁授權接口權限,無法從通過相應的接口來獲取openid(注意:可通過微信用戶和公眾號之間的交互事件獲取openid)。

2、解決方法(借助微信開放平台):

將訂閱號和服務號(具有網頁授權接口權限)綁定到同一微信開放平台下(同一用戶通過不同openid獲取統一的unionid)
獲取訂閱號所有已關注用戶的openid,通過openid獲取他們unionid,保存到數據庫
通過服務號授權后獲取用戶的服務號的openid,再獲取unionid,查詢數據庫判斷unionid是否已經存在,存在則已關注訂閱號,反之沒關注
此外,需要監聽微信用戶對訂閱號的關注、取消關注事件,相應的增加和刪除數據庫中的openid和unionid
---------------------
作者:過氣的小子
來源:CSDN
原文:https://blog.csdn.net/qq_29869663/article/details/82800214
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


 

已知Unionid,如何獲取用戶對於另一訂閱號的openid?如何判斷是否關注訂閱號?

1.通過服務號A的微信網頁授權,以scope為snsapi_userinfo的模式,獲得了用戶基於服務號A的openid(A),unionid,以及其他包含用戶信息的數據。
https://mp.weixin.qq.com/wiki...

2.現在希望在網頁上,判斷用戶是否已經關注訂閱號B

3.通過訂閱號B的獲取用戶基本信息(UnionID機制),返回的json包中有一個參數subscribe,是用戶是否訂閱該公眾號標識,值為0時,代表此用戶沒有關注該公眾號,拉取不到其余信息。
https://mp.weixin.qq.com/wiki...

4.請求訂閱號B的獲取用戶基本信息(UnionID機制)的json包,需要兩個參數。

參數 是否必須 說明
access_token (基礎access_token,並非網頁授權access_token)
openid 普通用戶的標識,對當前公眾號唯一

5.訂閱號沒有權限通過網頁授權的方式獲得openid(https://mp.weixin.qq.com/wiki...
。但是文檔 在獲取用戶基本信息(UnionID機制)中提到

在關注者與公眾號產生消息交互后,公眾號可獲得關注者的OpenID

但是在網頁上,是未知用戶是否已關注的,那么要如何獲得用戶基於訂閱號B的 openid ?如何去判斷用戶是否已經關注訂閱號B?

https://segmentfault.com/q/1010000012008711


 

知乎:

如何實時判斷用戶是否關注訂閱號?

在微信訂閱號看到一個活動,點開鏈接的時候,提示需要先關注該訂閱號,才能參與!所以比較好奇,這個訂閱號是怎么知道我是否關注了它?查閱了微信公眾平台接口之后,發現需要時服務號才能實現這個功能,所以想請教各位大神!
訂閱號是沒有網頁授權的接口調用功能的,所以要用訂閱號獲取openid的方式貌似只有一個,就是在用戶與你的訂閱號進行交互時(比如關注、取消關注、發消息、點擊菜單等),通過接收微信消息事件推送來獲取推送信息里帶有的openid,這時候你可以用訂閱號openid獲取用戶信息,但是打開網站鏈接后是無法直接獲取訂閱號openid,只能用服務號通過OAuth授權獲取服務號的openid,有了服務號openid就可以獲取用戶信息了,然后通過用戶信息中的unionid(需提前將公眾號綁定到同一個微信開放平台)將服務號openid和訂閱號openid關聯到一起,也就是說你可以使用服務號openid通過unionid機制關聯到訂閱號openid,有了訂閱號openid就可以獲取用戶對訂閱號的關注狀態等等了


作者:juson
鏈接:https://www.zhihu.com/question/27080937/answer/102588734
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM