为什么不在vue端直接访问获取code的url?

来源:4-3 微信用户授权(2)

isjia

2019-10-25

老师能否解释下为什么要将获取微信code这一步在服务端调用,为什么不在vue端判断没有openid的情况下直接redirect访问获取微信code的地址?没有看出这样做的好处在哪里,请教老师。

写回答

1回答

河畔一角

2019-10-25

放在前端会增加复杂度,不仅仅要判断code,如果已经授权过了还要判断cookie,当前端判断没有code跳转到微信服务器,最后还会回调回来要把第二次跳回来做区分,这样很容易死循环并且写一堆判断条件。您可以试一下

0
5
河畔一角
刚刚上面这个描述的有一点问题,openId不会过期,它是唯一的也是永久的。按照你的逻辑,首先判断是否有openId,如果没有跳转微信,微信授权会回来,这个时候发现依然没有openId,那原逻辑就会再跳微信,那我们肯定不能让他跳,就要在加判断是否含有code,如果没有code并且没有openId我们跳微信,如果有code,我们掉后台获取openId存cookie。大致是这个逻辑,我一开始这样做的时候担心给大家讲不明白,而且逻辑有点绕。您可以尝试用的思路做一遍,最后再跟课程的方式对比一下。找个最优的
2019-10-25
共5条回复

微信分享与支付专项课程 (公众号 小程序(云))

使用Vue2.6/小程序+Node技术栈,详解用户授权登录、分享、支付前后端的各个环节

729 学习 · 180 问题

查看课程