Ucenter通信原理由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“通信系统原理2nd”。
Ucenter 通信原理
1、用户登录bbs,通过logging.php文件,使得函数uc_user_login验证,如果验证成功,将调用函数uc_user_synlogin(位于uc_client/client.php文件中),在这个函数中调用uc_api_post(‘user’,synlogin,array(‘uid’=>$uid));调用完成之后向UC_API.’/index.php’传递了数据。这里的UC_API就是在config.inc.php中的定义的uc_server的URL地址。
2、uc_server的index.php接受参数数据,获得mode为user,action为synlogin,就调用control目录下的user.php类中的onsynlogin方法,通过foreach循环,以javascript的方式通知uc应用列表中的应用同步登录;即通过get方式传递参数给应用目录中的api下的uc.php一些数据。
3、uc.php接受通知并处理get传过来的数据,并在函数synlogin(位于uc.php中)通过函数_authcode加密数据(默认以UC_KEY作为密钥),用函数_setcookie设置cookie;
4、各个应用在适当的文件中用对应的密钥解码上面设置的cookie,得到用户id等数据;通过这个值来判断用户是否经过其他应用登陆过。
举例(以discuz为例)
一、用户登录检查与用户登录验证logging.php
在bbs的loginging.php中如下代码段
Else if($action == ‘login’)
{
If($discuz_uid)
{
$ucsynlogin = ‘’;
Showmeage(‘login_succeed’,$indexname);
}
}
检查用户id变量$discuz_uid是否为空来判断,用户是否登录(包括从别的应用登录)如果用户从bbs登录,则在登录验证成功后通过如下代码:
$ucsynlogin = $allowsynlogin ? uc_user_synlogin(): ’’;
通知其他应用------“用户已从bbs登录,请通知其他应用设置cookie”
(uc_server通过javascript调用的方式向其他应用的api/uc.php传递数据)
UC的整体工作原理是工作流程:应用程序->uc_client->uc_server->uc.php1,首先应用程序会发起相应的请求该步就是执行uc_client里面的client.php文件里面对于的函数。即官方提供......
通信的目的:传递消息中所包含的信息。消息:是物质或精神状态的一种反映,例如语音、文字、音乐、数据、图片或活动图像等。 信息:是消息中包含的有效内容。信道:将来自发送设备的......
蓝牙耳机的工作原理:关于音频流的蓝牙传输可以通过两个方式:1) 通过PCM接口来传送2)通过模拟UART来传送下面分别来讲述:1)通过PCM接口来传送通过音频播放器(eg: Media Player)来打......
电气信息工程学院通信工程导论 学习报告班 级姓 名 学 号得 分 2014年 10月目 录1、引言······································......
Socket原理,大致分为以下几个步骤。服务器端的步骤如下。(1)首先,在实用Socket之前,要首先初始化Socket,就是实用AfxSocketInit()函数。(2)在初始化完成以后,就可以建立服务端的Socket......