第三方应用和ucenter同步注册登陆基本流程

这是一篇来自官方论坛的文章,大家可以在学习的同时,看看是否有什么可以借鉴的。

第三方,以下简称ot;ucenter简称uc
一、在ucenter里注册ot实用,调试通信成功(细节不表);
二、实现注册同步
1.找到ot的注册函数;用uc_get_user()验证是否用户已在注册;
(1)未注册:继续本地验证,继续第2点;
(2)已注册:检测本地用户是否注册;
[1] 已注册:提示该用户名已注册过,不允许注册;
[2] 未注册:提示该用户已注册,但未本地激活;弹出激活页面;
2.继续本地用户验证(假设成功),把用户未加密的密码用新变量保存(注册ucenter需要原始密码以保证ucenter的其它应用使用);
3.先执行ucenter注册uc_user_register;检测返回结果是否成功;
4.ucenter注册成功;获得uc_id;
5.修改本地用户注表,增加一个uc_id字段以保存注册成功返回的uc_id,实现用户的信息的关联(当然也可以用原有用户表id跟uc_id关 联,discuz就是这样处理的本地用户id)
6.把用户信息添加到本地数据库;记得保存uc_id;
三、实现ot登录,同步其他应用也登录
1.找到ot登录代码块,先采用uc_user_login登录密码验证,
2.验证成功用获得的uid跟本地的会员表id关联,查出相应信息,再发送相应本地用户cookie;
3.执行uc_user_synlogin($id);执行同步登录
四、实现共他应用登录,ot也同步登录;
1.找到ot正常登录后所要执行的cookie登录操作代码;
2.找到ot的接口:uc.php;找到synlogin 代码块,参照上一点的代码修改原接口康盛的cookie操作代码;
五、实现其他应用登出,ot也同步登出
登出跟登录的修改要点刚好相反,不细表;把原在uc.php的synlogin 注册的cookie操作执行注销就OK
六、实现ot退出,其他实用也退出;
找到ot的退出代码块,执行 uc_user_synlogout();
七、用户信息修改;
找到ot的用户修改资料代码块,缓存用户的密码(未经过加密的);在允行执行修改时先执行uc_user_edit;再执行本地用户资料修乞讨

这是我之前作的一次整合后总结;经验不足,请大家多交流发表意见