1. 大部分互联网业务中 , 用户登陆功能是非常常见的模块 , 针对登陆功能的数据库设计常见的是下面这样的
ur表
id urname password … 其他用户信息
查询时的逻辑类似下面
pass=query(“lect ps照片处理* from ur where urname=’xxxx'”)
if(password==pass){
//登陆成功
}
这样的结构基本可以满足功能需要 , 但是当需要增加手机登陆 ,邮箱登陆 , 第三方登陆时 ,表结构该怎么设计呢?
可社会主义阵营能有人会想到在ur表里增加字段 , email , telphone , weixin_id …
这样的设计导致增加一种登陆方式就要增加字段 , ur表的字段过多 , 可扩展性非常差。
2. 针对需要第三方登陆的系统 , 最好是按照业务垂直拆分出分表 。把ur表中跟认证相关的业务拆分出来 ,变成独建设工程施工合同示范文本立的表 ,这样既能减小ur表的容量 ,又能方便的进行扩展字段 , 例如下面的表
local_auth表
i工行汇率d ur_id urname telphone email password
third_oauth表
id ur_id oauth_id oauth_type refresh_token
ur表
id小孩肝火旺怎么办 age x birth ….
上面把本地认证表和第三方oauth认证表与ur信息表进行了拆分 , 这样如果是用手机 ,邮箱 , 用户名 登陆,就去查询local_auth表 ,再去查询ur表
如果是第三方认证登陆 , 就根据第三方的oauth_id ,认证查询third_oauth表 ,不同的第三方根据oauth_type进行区分 , 再去查询ur表
本文发布于:2023-04-08 08:43:17,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/18421982f55c1b13096970b5cfe98052.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:[PHP] 设计一个可扩展的用户登陆系统.doc
本文 PDF 下载地址:[PHP] 设计一个可扩展的用户登陆系统.pdf
留言与评论(共有 0 条评论) |