效果是搭建完小程序,可以实现单站、多站微信小程序登录。
参考的是这个博主的文章(co松柏)公众号自己搜一下。

主流方案对比:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
| 小程序 |
|
0 元 |
|
简单看下核心步骤:
ticket 是中转凭证,每次打开登录弹窗生成一个随机 ticket(32 位 hex),存到 Redis,设 5 分钟过期
小程序码通过 getwxacodeunlimit 接口生成,scene 字段里塞的就是 ticket,用户扫码后小程序从 scene 里取出来
小程序端调 wx.login() 拿到 code,连同 ticket 一起发给后端,后端用 code 调微信的 code2session 接口换到 openid,完成用户身份绑定
网页每隔 1~2 秒请求后端“这个 ticket 登录了没”,一旦后端标记成功,前端拿到登录态,弹窗关闭
核心就是,通过小程序从微信获取唯一标识,绑定到我们的网站里,实现一个唯一标识(微信号)对应一个用户。
子比演示
我这边用的是闲置的小程序,AI写的测试插件,只要部署在服务器上就可以使用。



我这边是用插件直接替代主题的登录,功能效果完美嵌入,小程序的话,我写了一个后台,前台是一个作为演示的小工具。
开发的话没什么建议,把需求写清楚最好,仅提供一个思路。所有问题自己测试。由于我设置了“未采集用户隐私”,所以登录的时候也没有获取到用户名和头像,只做了一个登录功能。









