下边这篇文章笔者将介绍在用户系统账号与微信账号一对多的情况下,如何设计来实现数据的互通的相关信息。有需要了解相关信息的同学可以了解了解。
一、背景与目的如果我们系统的用户账号与微信账号是一对一的关系,那么我们可以轻松地将系统数据与微信生态应用中的数据联通起来。
但是由于业务需求或特殊情况,我们的用户系统账号与微信账号往往无法保持一对一的映射关系,例如允许用户在小程序之间切换账号,或者将多个系统子账号的通知推送到同一个微信公众号中。本文将介绍在用户系统账号与微信账号一对多的情况下,如何设计来实现数据的互通。
二、方案设计1. 微信用户体系调研对于同一个用户,在同一个微信开放平台账号下的不同移动应用、网站应用和公众号(包括小程序)中,OpenID不同,但UnionID相同。例如,如果您拥有小程序A、小程序B和一个微信公众号,并将它们绑定到同一个微信开放平台账号下,当微信用户进入小程序A、小程序B或公众号时,他们获得的UnionID是相同的。这意味着可以根据UnionID查询当前微信用户在同一开放平台下的每个小程序或公众号中的数据,从而实现了数据的高效共享。
2. 设计思路为满足业务需求,应允许一个UnionID绑定多个UserID;根据微信用户体系调查,应允许一个UnionID对应多个不同应用(在同一开放平台下)的OpenID,并且确保UnionID和各个OpenID之间具有唯一性(即一个UnionID对应不同应用的OpenID不会重复);为提高产品易用性并降低用户操作成本,UserID、UnionID和OpenID之间的关联操作应灵活,不要求用户按照特定顺序执行。例如,用户可以先关注公众号,然后登录小程序以完成关联,也可以通过登录小程序后再关注公众号来完成关联;为确保账户信息的安全性和操作准确性,不允许一个UserID绑定多个UnionID。当UserID已经关联了一个UnionID时,应将其更新为当前登录的UnionID和OpenID;在数据新增和更新时,应同时将UserID和UnionID作为主键,以避免一个UserID对应多个UnionID的数据存在。 3. 设计方案根据上述解决方案思路,我们为以下4个场景进行了详细设计:登录小程序、通过Web扫码关注公众号、通过微信关注公众号以及取消关注公众号。通过这些设计,我们实现了以下效果:
一个微信账号可以登录多个系统账号,并且多个系统账号的信息可以推送至该微信的公众号中。用户可以在这4个场景中随意执行,不受顺序限制,而仍然能够确保系统账号与小程序、公众号的准确关联。登录小程序场景:
Web扫码关注公众号:
微信里关注公众号:
取消关注公众号:
三、最后本文详细探讨了在用户系统账号与微信账号无法一一对应时,如何设计系统以实现数据的互通。实现过程中,需注意用户操作的灵活性和信息的安全性。用户可以在不同的场景中自由切换,而系统能够确保账号之间的准确关联。同时,通过将UserID和UnionID作为主键,我们避免了一个UserID对应多个UnionID的数据冲突,确保了数据的一致性和准确性。
本文由 @Kuang扶正义的匡 原创发布于人人都是产品经理,未经许可,禁止转载
题图来自 Unsplash,基于 CC0 协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。
小程序为了更好的服务客户,有时候需要显示公众号的文章,用于更具体介绍产品、关注公众号和会员服务等。下面就将具体介绍:小程序中如何同步显示公众号的文章。
1. 关联公众号。在管理员后台->会员管理->通知处,关联服务号。关联服务号后,后续请不要再更换其它服务号,否则会员通知可能会出现错乱。
2. 同步文章。在管理员后台->文章管理处,点击同步按钮,系统会同步公众号自由发表的文章。如果此前没有关联过公众号,系统会通过对话框提示引导到步骤1。
3. 在小程序中显示文章。同步之后,在个人中心->动态页面,可以显示文章列表。如果希望将文章显示在首页,可以在小程序管理员后台->页面设置,添加文章栏目,然后添加关联文章。
如果希望文章作为一个单独的页面显示在小程序中,例如小程序显示为:首页、分类、动态、购物车、我的。可以在小程序管理员后台->版本更换中添加动态页面。平台审核通过后,即可展示。
4. 后台查询或删除文章。在输入框中输入查询内容,然后点击查询,即可查询同步的文章。在文章上点击删除,或者勾选文章,然后点击顶部的删除,即可删除文章。
小程序通过同步公众号文章的显示,可以更方便商家说明自己的业务,更好的为客户服务,减少沟通成本。值得注意的是:关联公众号功能,因为一些原因,必须要注册了微信开放平台账号,并在其中将小程序和待关联的公众号进行绑定。然后才能在小程序管理员后台进行关联公众号功能。如果你还没有这样的小程序,搜一搜采云去免费开通。