ucenter 整合代码

来源:互联网 发布:暗黑战神 源码分析 编辑:程序博客网 时间:2024/04/28 21:29

                              整合方法

 

(1) 如果单说整合用户的话:

 

整合时应用程序的改动也非常小,原数据库不用动原写cookies的代码不用动原写数据库session的代码不用动,原来的程序也不用怎么动,只需改动以下4个文件:


login.php  register.php  logout.php 修改密码文件.php 

 

4个文件中加上和ucenter api通信的语句和逻辑结构。

另需要针对ucenter新增加一个文件uc.php,这个文件就是应用程序接收ucenter传来的指令并执行的文件。


共计改4个文件,增一个文件。


(2) 如果要是整合站内信pm,好友,头像等功能,思路与方法和整合用户类同。

另外有一点,在不同的系统之间注册的用户,在第一次登录某个从来没有登录过的系统时,会让激活。借用这个激活,可以让用户完善在本应用程序中的资料,如企业注册资料。资料不完善,不可以激活。

如在bbs注册一个用户test,第一次来到b2b的程序中,这时,并不会自动登录,而是要求用户激活,而test在bbs注册时填的字段与b2b中要求的不同。这时让用户完善资料。第二次来就会自动登录。



以用户登录为例介绍,其它注销,改密码,消息,头像,好友均类同。

1.
用户xxx在某一应用程序的login.php,输入用户名,密码。
首先启用uc_user_login函数到uc server验证此用户和密码,如正确,则写入session,并更新应用程序会员表中的登录ip,登录时间。用户感觉不到这个过程。
2.
然后通过uc_user_synlogin通知uc server 用户xxx登录成功,这个过程可能使用ajax,用户感觉不到通知过程。
3.
uc server收到这个消息后,马上命令手下,把xxx登录的消息,像令牌环一样,发给所有愿意接收(后台中是否开启同步登录)这个消息的其它应用程序。其实就是带参数访问一下各应用程序的uc.php,用户感觉不到这个过程。
4.
各应用程序靠api下的uc.php来接收uc server发来的消息,并对uc server言听计从,让干什么就干什么。现在,收到让xxx用户在你的程序中登录的命令,马上执行。
并写本应用程序的session,并且使用p3p, 写入相同域或不同域的cookies.  用户感觉不到这个过程。

5.最后所有和uc整合的程序,xxx均登录成功。用户从某站点登录后,跳到另一子站点同样显示登录。因为bbs 和news系统在后台均已登录。

6.应用程序与uc server的会话结束。




0 0
原创粉丝点击