小程序引导关注公众号实现方案:利用UnionID机制与前后端协作

2025-02-21
来源:网络整理

背景:

最近的一个Mini计划项目中有一个要求:输入我的主页后,如果用户尚未遵循我们的官方帐户,则组件指导官方帐户,单击以跳到公共帐户文章以指导用户关注,并且用户完成以下内容以隐藏组件。

方法1(前端和后端参与):由于您对微信机制有一点了解(知道在同一开放平台下的不同应用程序中有一个统一的机制),因此最初的想法如下:

当Mini计划和官方帐户绑定到同一微信开发平台时,后端使用代码在用户在Mini程序中登录的同时获取用户;后端使用接口()通过官方帐户获取用户的基本信息,检查用户信息,并且其中的字段表示用户是否遵循官方帐户。为查询提供前端的接口;进入我的主页后,前端调用接口以确定指导组件的结果是否将在面部敲打:在步骤3中,查询官方帐户的用户信息,只能通过官方来完成说明查询不能通过,也不能重新出现,这令人尴尬。

微信小程序关注公众号组件_从小程序关注公众号_微信小程序关注公众号开发

因此,我们只能找到一种方法来首先获取用户的官方帐户。如何实现?当然,在开发官方帐户网页时,我们获得了(微信网页授权)。由于我们的目的只是获取用户,因此此授权方法是无声的。但是,网页授权要求提供一个网页以接收授权回调参数,这意味着我们必须从迷你程序跳到网页。

那么跳跃的时间是什么?为了减少用户的看法,我使用的方法是将此页面用作跳板页面,请在用户跳到官方帐户之前,获取授权并向服务器报告,然后跳到官方之前,请访问页面。帐户文章页面(实际上,我最初计划通过此页面上的标签打开官方帐户文章,但是我发现,由于无法实施微信的反盗窃链机制,因此我不得不跳过重定向)。该过程如下:

首先部署一个空白的跳板页面以接收微信网页授权并向服务器报告,然后重定向到最初需要重定向的官方帐户文章页面;在官方帐户管理背景(即部署空白页的第一步)和服务器IP白名单中配置授权回调域,并将页面名称配置为Mini 域名;在单击MINI程序指导组件后,首先打开由提供的网页授权链接通过组件提供的(请记住要传递用户的UID传递参数以在用户UID和UID之间建立映射关系),此链接将自动重定向到我们部署的跳板页面。将授权报告到页面后,重定向到官方帐户文章页面;在获得代码后,报告回到后端,它将绑定到用户的UID,并提供一个接口来查询官方帐户的用户信息,以便用户注意公共爱好()。返回我的主页后,前端调用接口,以确定用户是否关注,OK√页面代码如下:

这种方法的优点是它对用户体验几乎没有影响。在用户看来,加载官方帐户文章只需要更长的时间,而且感觉不多。但是,缺点也很明显,也就是说,用户必须通过跳板页面才能获取它。如果用户从其他渠道遵循官方帐户,他仍将在输入MINI计划后显示遵循组件的指南,因为我们还不知道。不可能判断他是否已关注。

但是目前,我们的产品同学不高兴,并要求我们找到一种优化它的方法。因此,为了解决此问题,我们采用了第二种方法:后端维护了一个遵循用户表的公共帐户,并查询用户是否已经在表中。

微信小程序关注公众号组件_微信小程序关注公众号开发_从小程序关注公众号

方法2(仅后端):详细信息如下:

在同一微信开发平台下,后端将官方帐户拉到官方帐户遵循的用户列表(获取用户列表)并获取每个用户,并创建遵循的用户列表;后端监视官方帐户用户遵循/取消关注事件(遵循/取消关注事件),更新表;当用户登录以在Mini程序中注册时,后端使用代码获取用户的用户并保存它;当前端请求查询时,后端根据请求的启动向用户请求。检查表以确定用户是否遵循它;如果官方帐户是新的,并且没有遵循的用户,则可以省略第二步。与此方法相比,用户无需查看页面,也可以查询他们从其他渠道遵循的公共帐户,并且他们不需要参与前端,并且后端可以是实施的。缺点是它更麻烦。建议前端学生采用这种方法(笑)

结尾

分享