今天中午跟我的上司一顿争辩,没争辩过他们(本身我也不是争辩的好手)。争辩的内容就是一个微信公众号下多个小程序登录的问题,哈,要是不解决我真是寝食难安!!!

我们公司的小程序框架都是我搭建的,前几代就不说了。最后一代相对成熟的是根据openId生成userId,把userId放到app.js中作为全局变量。这样,只要拿到userId就可以去Redis取到任何想要的数据。

但是这一版我发现还是有问题,就是用户第一次进入该公众号绑定的其中一个小程序以后,将openID,和手机号放到user信息中(注意,第一次没有unionID),但是第二次进入该公众号绑定的另一个小程序后。还需要用户输入手机号进行用户身份的辨认,因为第二次生成的openID与unionID不足以辨认用户身份。这样的体验很不好。所以我下一代小程序框架的构想是,当获取userId时,就跳到主小程序(含用户登录模块的那个),登录成功以后,将userID返回原来的那个小程序,然后放在那个小程序的app.js中。这样一来,即节约了代码,还能优化流程。但是我的上司认为其他小程序的openID也一定要存的,但是我认为openID只能作为获取用户信息的作用,并不能作为唯一标识。

谁来说服我一下,我快要被自己犟死了!!!

展开全部
收起
10回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Janaya

    19人对此回答表示赞同

    说的就是固定不变是不对的,前端保存的不管是token还是session(你用的是userId)都必须有过期和刷新策略才能保证安全性

    展开
    19
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 忐忑不安

    18人对此回答表示赞同

    对的,因为假设第一次用户进入小程序,这个时候是没有unionId。用户第二次进入别的小程序,这个时候才有unionId,但是因为你第一次没有获取到,所以unionId也无法辨别用户是哪个用户。所以这块就需要拿用户第一次进入小程序的手机号进行辨认了,第三次以后就可以用unionId了。

    展开
    18
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 汪撕葱

    16人对此回答表示赞同

    您所查看的回复已隐藏。

    展开
    16
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • Maya

    16人对此回答表示赞同

    前端就应该用token,而不是任何ID,ID应该是后端根据token来获取。主用userID来做key值也是非常不安全的,userID是完全不能当token来用的。

    展开
    16
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 林小姐也是lyn

    16人对此回答表示赞同

    是啊,后来我发现还是要存openId。

    展开
    16
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 灯下夜祷

    14人对此回答表示赞同

    我想问下,如果openid放在了后台存储,前端只返回session_id。那如果前端调用接口时,需要openid作为参数,那要如何处理啊?

    展开
    14
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 理屈词穷

    14人对此回答表示赞同

    传session_id去后台的session或者Redis里去取。如果你后台一个用户绑定多个openId,这块你还需要传递一个参数。以确认获取哪个app下的openId。

    展开
    14
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • Nicholas

    11人对此回答表示赞同

    第一次进入时没有unionId,学到了

    展开
    11
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • Everly

    10人对此回答表示赞同

    不一定第一次就会没有unionId,如果用户之前关注过绑定小程序的微信公众号,第一次进入小程序是游unionId的。

    展开
    10
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • Ryder

    7人对此回答表示赞同

    这块确实要作为下一个版本的优化,还有getUserInfo那也要优化。

    展开
    7
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部