技术控

    今日:43| 主题:49507
收藏本版 (1)
最新软件应用技术尽在掌握

[其他] 浅谈多个社交账号的登录注册设计

[复制链接]
萌城少年 发表于 2016-10-1 02:14:47
136 6

立即注册CoLaBug.com会员,免费获得投稿人的专业资料,享用更多功能,玩转个人品牌!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

浅谈多个社交账号的登录注册设计-1 (社交账号登录)

  本篇文章,主要讲述了用户登录注册的逻辑及如何用社交账号登录。
  仅供参考,具体情况依据产品需求而定。
  用户注册逻辑
  
       
  • 参数
           
    • (username)用户名     
    • (password)密码     
    • (platform_id)平台ID     
    • (code)验证码   
       
  • 验证数据合法性。
    判断user表是否存在该用户名。
    若存在,引导用户登录。
    若不存在,执行注册的程序。
       
  •   密码加密规则 (参考:  加密技术与密钥安全管理   )
      
  用户登录逻辑
  
       
  • 普通登录:
           
    • 参数:
              
      • (username)用户名      
      • (password)密码      
      • (platform_id)平台ID      
      • (code)验证码      
            
    • 验证数据的合法性。
      判断user表中是否存在用户数据。
           
    • 记录日志。
         
       
  • 社交账号登录(参数):
           
    • 参数:
              
      • (platform_id)平台ID      
      • (channel_id)渠道ID      
      • (open_id) 社交平台开放ID      
            
    • 验证数据的合法性。
      判断user_social表中是否存在该openid的数据。
      若存在,直接进行登录。
      若不存在,将数据,存储到user_social 表,引导用户绑定本站账号。
      若本站已存在账号,直接关联账号即可。
      若本站不存在账号,引导用户注册,成功后与当前openid关联即可。
           
    • 记录日志
         
       
  数据表结构
  
       
  • 用户账号表
    [code]CREATE TABLE `user` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `username` varchar(80) NOT NULL DEFAULT '' COMMENT '用户名',
      `password` char(60) NOT NULL DEFAULT '' COMMENT '密码',
      `platform_id` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '平台ID(1=PC,2=Wap,3=Android,4=iOS)',
      `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户账号表';[/code]   
  • 用户社交账号表
    [code]CREATE TABLE `user_social` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `uid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户ID',
      `open_id` varchar(120) NOT NULL DEFAULT '' COMMENT '社交平台开放ID',
      `platform_id` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '平台ID(1=PC,2=Wap,3=Android,4=iOS)',
      `channel_id` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '渠道ID(1=QQ,2=SinaWeibo,3=Weixin)',
      `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
      `update_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '更新时间',
      PRIMARY KEY (`id`),
      KEY `idx_uid` (`uid`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户社交账号表';[/code]   
  • 用户登录日志表
    [code]CREATE TABLE `user_login_log` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `uid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户ID',
      `platform_id` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '平台ID(1=PC,2=Wap,3=Android,4=iOS)',
      `channel_id` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '渠道ID(1=QQ,2=SinaWeibo,3=Weixin)',
      `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间'
      PRIMARY KEY (`id`),
      KEY `idx_uid` (`uid`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户登录日志表';[/code]  
  Thanks ~
  ​
友荐云推荐




上一篇:Firefox blocks websites with vulnerable encryption keys
下一篇:6 Steps To Successful Continuous Deployment Transition
酷辣虫提示酷辣虫禁止发表任何与中华人民共和国法律有抵触的内容!所有内容由用户发布,并不代表酷辣虫的观点,酷辣虫无法对用户发布内容真实性提供任何的保证,请自行验证并承担风险与后果。如您有版权、违规等问题,请通过"联系我们"或"违规举报"告知我们处理。

113132132 发表于 2016-10-1 02:19:23
不忍直视
回复 支持 反对

使用道具 举报

丁志豪 发表于 2016-10-1 05:43:57
不回帖,臣妾做不到啊!
回复 支持 反对

使用道具 举报

还有谁了 发表于 2016-10-2 02:03:36
广告位,,坐下看看
回复 支持 反对

使用道具 举报

otuvnwsz 发表于 2016-10-18 04:30:40
明星脱一点就能更出名,我脱的光光的却被抓起来了
回复 支持 反对

使用道具 举报

1536476952 发表于 2016-10-18 05:02:10
传说中的沙发???哇卡卡
回复 支持 反对

使用道具 举报

o限 发表于 2016-11-18 17:45:43
做为一名新人,不敢在大声说话,也不敢得罪人,只能默默地顶完贴然后转身就走人。动作要快,姿势要帅,深藏功与名。
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

我要投稿

推荐阅读

扫码访问 @iTTTTT瑞翔 的微博
回页顶回复上一篇下一篇回列表手机版
手机版/CoLaBug.com ( 粤ICP备05003221号 | 文网文[2010]257号 )|网站地图 酷辣虫

© 2001-2016 Comsenz Inc. Design: Dean. DiscuzFans.

返回顶部 返回列表