微信内直接跳转公众号关注页面
在微信浏览器想要打开对应公众号,目前有两个方法,功能和实现不一样。
中转页放公众号二维码
属于用户使用门槛比较高的一种,直接跳转到中转页,提示用户长按识别二维码
好处是可以保留 scene 等信息,跳过去可以带一定的参数,对方公众号不需要做开发
跳微信公众号消息页
微信公众号消息页会在首部显示公众号和 “去关注” 按钮。
这种方法跳转,用户操作步骤少,比较容易接受,该跳转路径不接受场景值,如果传参,最好目标公众号的额外提供中转页做好openid 绑定,假设从 A 公众号导流 到 B 公众号。
- A业务页面重定向到 B 的中转页,带A的识别参数,例如 channelCode
- B中转页完成微信 Oauth 鉴权,拿到 B Openid_b , B 中转页取 channelCode ,与该用户绑定
- B中转页继续重定向到微信消息页,引导用户关注。
跳转的微信消息页的链接格式为:
https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzUyODgxNjE1OA==&scene=124#wechat_redirect
其中 __biz=MzUyODgxNjE1OA== 是关键参数,后面的这串 MzUyODgxNjE1OA== 是公众号的身份标识。
这个值有两种获取办法
第一种方法比较复杂,需要使用 devTools
- 浏览器打开公众号推文
- F12 或者 ctrl + shift + c 打开 devTools
- 切换到 network 页签,然后刷新页面
- 点击搜索图标
- 输入 __biz=
- 点击找到的请求记录,点开 payload
- 查看 payload 的 queryString 即可看到 __biz 的值
第二种方法稍微简单,需要进入公众号后台
- 最左边找到公众号设置
- 找到下载二维码,点开
- 复制二维码下载地址的链接,粘贴出来,可以看到链接中有一个类似于 fakeid=12345678,将这串数字拷贝出来
- 找一个 base64 encode 工具,例如 OSchina/base64 或者 直接在浏览器控制台执行
btoa(12345678)
,得到一个字符串,这个就是 __biz
通过上述两个方法得到 __biz 后,拼接到下面这个链接中即可。
https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=【__biz的值】&scene=124#wechat_redirect