实现ucenter通信的原理是什么

介绍

实现ucenter通信的原理是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1,用户登录康盛创想,通过logging.php文件中的函数uc_user_login对帖子过来的数据进行验证,也就是对用户名和密码进行验证。

2,如果验证成功,将调用位于uc_client下客户。php文件中的函数uc_user_synlogin,在这个函数中调用uc_api_post(“用户# 39;‘synlogin& # 39;,数组(“uid # 39;=祝辞uid)美元)。

3,然后这个函数后向Ucenter的index . php传递数据,index . php接受传递的数据,获得模型为用户,行动为synlogin的值。

4,然后Ucenter的index . php调用控制目录下的user.php类中的onsynlogin方法,通过foreach循环,以javascript的方式通知加州大学应用列表中开启同步登陆的应用进行同步登录,即通过得到方式传递给各个应用目录中api下的uc.php一些数据。

5, uc.php接收通知并处理得到过来的数据,并在函数synlogin(位于uc.php中)通过函数_authcode加密数据(默认以UC_KEY作为密钥),用函数_setcookie设置饼干。

6,各个应用用对应的密钥解码上面设置的cookie,得到用户id等数据,通过这个值来判断用户是否经过其它应用登录过,从而让用户可以自动登陆。

应用程序的日志记录。php——祝辞uc_client中的client.php——祝辞Ucenter——在其他应用程序中/uc的api。php .

其实Ucenter实现同步登陆的原理就是饼干,一个应用登陆成功之后,向Ucenter传递数据,让Ucenter通知其他的应用也设置饼干,这样用户在访问其他应用的时候通过已经设置好的饼干实现自动登陆。

大致步骤,首先要安装Ucenter然后把uc_client这个文件夹复制到自己的项目里面去,然后呢在配置几个文件

client.php相当于函数库
uc.php相当于回调文件
配置。php是配置文件

当你有2个应用都设置了同步登陆之后,当你登陆一个应用然后执行

代码如下:


包括“。/config.inc.php& # 39;;
包括“。/uc_client client.php& # 39;;
$用户名=発yee”;
$密码=" 123456 ",
列表(uid、用户名、密码,美元电子邮件)=uc_user_login(用户名、密码)美元;
如果(uid比美元;0){

setcookie(“用户名”,用户名、时间()+ intval中(24 * 3600));
回声uc_user_synlogin (uid)美元;
回声”登录成功& # 39;;
} elseif (uid==1美元){
回声的用户不存在,或者被删除& # 39;;
} elseif (uid==2美元){
回声的密码错误& # 39;;其他
} {
回声”未定义& # 39;;
}

uc_user_synlogin()这个函数代表着要同步登陆到其他所有开启同步登陆的函数,加州大学自己会在后台把所有开启同步登陆的应用都给循环遍历一遍然后在页面上输出,

代码如下:


& lt;脚本https://www.yisu.com/zixun/type=" text/javascript " src=" http://www.lihuai.net/wp-content/uploads/sp/uc.php?time=1408327309&代码=bc6bFLa6WH343nin2GAn % 2 f82y9cncennpk1gclgyhdqf4wsxsosdtyqbb2nuoxe0ujqzwmwncdx % 2 ffq1gk6fs % 2 bqjqi2axvg2oq1pd9c1wzy % 2 bgjxs7qo4mm2sxfvhww7jnjkgpdkvddqtyeybksisz7yrdb0zfuxh2yr3cq“重载=" 1 ">

& lt;脚本https://www.yisu.com/zixun/type=" text/javascript " src=" http://www.lihuai.net/wp-content/uploads/sp/uc.php?time=1408327309&代码=206 flcqeb % 2 faft % 2 fdfpno9bvqsb1b0o6xtzdibyood7ec11vmrjzc7paklo0lf3tgihwlwzkwdw5vdhq866mgulsco5nekfkl341vwp7bpabnzpntgg7m4jzpfdx6nvp0ltjlyi % 2 bkebi7ulm58atk8ex4skbj % 2 ffdkjh % 2 f8z“重载=" 1 ">

类似这种的js代码,就是发送给每个开启同步登陆的应用,然后每个开启同步登陆的应用的回调文件加州大学。php接受到后会进行解密,解密好后其实你就可以自己来写代码了,这个加州大学。php回调文件的代码不一定非要按照他们的格式来写,你也可以自己写你自己的代码。

其实UC的原理很简单,就是某个应用登陆后,然后后台轮询发送给同步登陆的应用的回调文件,回调文件接收到用户ID之后,生成饼干或会话者然后进入登陆模式。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

实现ucenter通信的原理是什么