【Lilishop商城】No4-5.业务逻辑的代码开发,涉及到:会员B端第三方登录的开发-根据第三方用户标识进行登录(例如:unionID、openid),主要用于移动APP端

 仅涉及后端,全部目录看顶部专栏,代码、文档、接口路径在: 

【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客


全篇会结合业务介绍重点设计逻辑,其中重点包括接口类、业务类,具体的结合源代码分析,源码读起来也不复杂~

谨慎:源代码中有一些注释是错误的,有的注释意思完全相反,有的注释对不上号,我在阅读过程中就顺手更新了,并且在我不会的地方添加了新的注释,所以在读源代码过程中一定要谨慎啊!

目录

A1.会员联合登录模块

B1.根据第三方用户标识进行登录(例如:unionID、openid) 

业务逻辑:

        题外注意:

代码逻辑:


根据标题名就可以知道,第三种方式对于后端来说是比较简单的,和第一种方式:微信小程序登录接口开发 很像,获取用户授权的信息是交给前端的,后端只用负责拿到用户唯一标识,然后进行后面的业务操作~

这种方式对应的shop的前端是用 uniapp 开发的,所以在前端使用的 uni.login 方式,调起第三方客户端,用户授权后会拿到用户唯一标识,然后前端再调用平台后端请求接口来实现后续的业务~~

前端主实现的页面:/lilishop-uniapp-master/pages/passport/login.vue

当然喽,APP端的第三方登录不止这一种方式的。

A1.会员联合登录模块

B1.根据第三方用户标识进行登录(例如:unionID、openid) 

业务逻辑:

  1. 前端进行授权操作,用户授权成功后调用接口,并携带参数用户信息(openid、type第三方类型QQ/WECHAT等、nickname等);
  2. 后端接受到参数,查看联合登陆关联表信息li_connect中有没有对应type、openid 的账号,查询到说明绑定过,直接根据账号创建 Token 并返回;没查询到这说明没有绑定过,就先根据此用户信息创建账号,然后返回该帐号的登录 Token;

很简单~

题外注意:

看到这里也就更清楚我之前说的shop项目同一个用户不同方式登录会产生好多个账号了!因为用户使用某种第三方授权登录时,并没有携带用户唯一标识 ,这里指的不是 openid unionid,而是平台能确定的唯一标识!

平台指定的用户名和手机号码,但是用户是用第三方登录时,并没有输入用户名或手机号码进行绑定检测!!!这就是唯一区别!!!哪怕微信的各类产品 unionid 是唯一的,但是你能保证 QQ 的unionid 和微信的是一样的吗》不能呀,所以说本质就是没有是用平台的唯一标识绑定!!!

像 CSDN 和 码云,都是能够指定账号绑定的!!!

代码逻辑:

我们说过这个登录方式的业务逻辑 2. 和上一篇的callback里面的业务很像,尤其是通过 ConnectUtil 拿到用户信息后的逻辑,就是一样的~所以说,我们完全可以把后面的逻辑放到一起,代码里面就是把公共的代码抽象了出来~~~

这篇文章结束的很多快,哈哈哈哈哈~~~~~~~~


后面就进入商品模块的解析吧,要记录的东西很是多呀,让暴风雨来的更猛烈些吧!!!!!

猜你喜欢

转载自blog.csdn.net/vaevaevae233/article/details/128473432