天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

簡(jiǎn)單分析ucenter 會(huì)員同步登錄通信原理

1、用戶(hù)登錄discuz,通過(guò)logging.php文件中的函數(shù)uc_user_login對(duì)post過(guò)來(lái)的數(shù)據(jù)進(jìn)行驗(yàn)證,也就是對(duì)username和password進(jìn)行驗(yàn)證。

2、如果驗(yàn)證成功,將調(diào)用位于uc_client下client.php文件中的函數(shù)uc_user_synlogin,在這個(gè)函數(shù)中調(diào)用 uc_api_post('user', 'synlogin', array('uid'=>$uid))。

3、然后這個(gè)函數(shù)后向Ucenter的index.php傳遞數(shù)據(jù),index.php接受傳遞的數(shù)據(jù),獲得model為user,action為synlogin的值。

4、然后Ucenter的index.php調(diào)用control目錄下的user.php類(lèi)中的onsynlogin方法,通過(guò)foreach循環(huán),以Javascript的方式通知uc應(yīng)用列表中開(kāi)啟同步登陸的應(yīng)用進(jìn)行同步登錄;即通過(guò)get方式傳遞給各個(gè)應(yīng)用目錄中api下的uc.php一些數(shù)據(jù)。

5、uc.php接收通知并處理get過(guò)來(lái)的數(shù)據(jù),并在函數(shù)synlogin(位于uc.php中)通過(guò)函數(shù)_authcode加密數(shù)據(jù)(默認(rèn)以UC_KEY作為密鑰),用函數(shù)_setcookie設(shè)置cookie。

6、各個(gè)應(yīng)用用對(duì)應(yīng)的密鑰解碼上面設(shè)置的cookie,得到用戶(hù)id等數(shù)據(jù);通過(guò)這個(gè)值來(lái)判斷用戶(hù)是否經(jīng)過(guò)其它應(yīng)用登錄過(guò),從而讓用戶(hù)可以自動(dòng)登陸。

應(yīng)用程序的logging.php ------>uc_client中的client.php------>Ucenter------>其他應(yīng)用程序中的api/uc.php

其實(shí)Ucenter實(shí)現(xiàn)同步登陸的原理就是cookie,一個(gè)應(yīng)用登陸成功之后,向Ucenter傳遞數(shù)據(jù),讓Ucenter通知其他的應(yīng)用也設(shè)置cookie,這樣用戶(hù)在訪(fǎng)問(wèn)其他應(yīng)用的時(shí)候通過(guò)已經(jīng)設(shè)置好的cookie實(shí)現(xiàn)自動(dòng)登陸。

大致步驟 ,首先要安裝 ucenter 然后把uc_client 這個(gè)文件夾復(fù)制到自己的項(xiàng)目里面去 ,然后呢在配置幾個(gè)文件

client.php相當(dāng)于函數(shù)庫(kù)

uc.php相當(dāng)于回調(diào)文件

config.php 是配置文件

當(dāng)你有2個(gè)應(yīng)用都設(shè)置了同步登陸之后  當(dāng)你登陸一個(gè)應(yīng)用 然后執(zhí)行

include './config.inc.php';
include './uc_client/client.php';
$usernames="kyee";
$passwords="123456";
list($uid, $username, $password, $email) = uc_user_login($usernames, $passwords);
if($uid > 0) {

setcookie("username",$username,time()+intval(24*3600));
echo uc_user_synlogin($uid);
echo '登錄成功';
} elseif($uid == -1) {
echo '用戶(hù)不存在,或者被刪除';
} elseif($uid == -2) {
echo '密碼錯(cuò)誤';
} else {
echo '未定義';
}

uc_user_synlogin() 這個(gè)函數(shù) 代表著 要同步登陸到其他所有開(kāi)啟同步登陸的函數(shù)  uc自己會(huì)在后臺(tái)把所有開(kāi)啟同步登陸的應(yīng)用都給循環(huán)遍歷一遍 然后 在頁(yè)面上輸出 

<script type="text/Javascript" src="http://rayibeauty.ck101.com/api/uc.php?time=1408327309&code=bc6bFLa6WH343nin2GAn%2F82Y9cnCennPk1gcLGYHdQF4wsXsOSdTyqBb2Nuoxe0UJqzWMWncdx%2FfQ1GK6FS%2BqJqi2AxVG2Oq1pD9c1wZy%2BgjXs7qo4mm2sxFVHwW7JnjKGPDkVdDqtYeybkSISz7yrdb0ZFuXH2yr3Cq" reload="1"></script>

<script type="text/Javascript" src="http://kibeauty.ibeauty.tw/api/uc.php?time=1408327309&code=206flCqeb%2Faft%2FDFPno9Bvqsb1b0o6XTZdIByOoD7EC11vMrjzC7PaKLo0LF3tGiHwlwZkwdW5VDHq866MGulsco5nekfkL341VWp7BPabnZPNtgG7m4jZpfdx6nVP0LTJLYI%2BkebI7uLm58atk8Ex4sKBj%2FfDkjH%2F8z" reload="1"></script>

類(lèi)似這種的js代碼 ,就是發(fā)送給每個(gè)開(kāi)啟同步登陸的應(yīng)用, 然后每個(gè)開(kāi)啟同步登陸的應(yīng)用的回調(diào)文件 uc.php 接受到后會(huì)進(jìn)行解密,解密好后其實(shí)你就可以自己來(lái)寫(xiě)代碼了,這個(gè)uc.php回調(diào)文件的代碼不一定非要按照他們的格式來(lái)寫(xiě) ,你也可以自己寫(xiě)你自己的代碼 。

其實(shí)UC的原理很簡(jiǎn)單 ,就是某個(gè)應(yīng)用登陸后,然后后臺(tái)輪詢(xún)發(fā)送給同步登陸的應(yīng)用的回調(diào)文件 ,回調(diào)文件接收到用戶(hù)ID之后,生成cookie或者session然后進(jìn)入登陸模式。

php技術(shù)簡(jiǎn)單分析ucenter 會(huì)員同步登錄通信原理,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 儿子好妈妈的HD3中字抢劫 | 97视频在线观看免费播放 | 日韩 国产 欧美视频二区 | 99久久e免费热视频百度 | 理论片午午伦夜理片影院 | 国产精品97久久AV麻豆 | 久久天天综合 | 青青草AV国产精品 | 啊叫大点声欠CAO的SAO贷 | 特级做A爰片毛片免费69 | 色百度网址大全 | 世界上第一个得抑郁症的人是谁 | 国产在线精彩亚洲 | 午夜福利体验免费体验区 | 亚洲理论在线a中文字幕 | 亚洲精品久久久久69影院 | 37大但人文艺术A级都市天气 | 国产亚洲欧美在线中文BT天堂网 | 中文字幕无码亚洲视频 | 黑人寄宿羽月希产后奶水 | 菠萝蜜国际一区麻豆 | 97超碰在线视频人人av | 亚洲精品一卡二卡三卡四卡2021 | 国产在线精品亚洲 | 国产精品一区二区资源 | 久草在线福利资站免费视频 | 无人区日本电影在线观看高清 | 亚洲国产成人99精品激情在线 | 蜜柚免费视频高清观看在线 | 亚洲黄色免费在线观看 | 黄色网址在线播放 | 久9青青cao精品视频在线 | 欧美 日韩 亚洲 在线 | 日韩精品在线观看免费 | 花蝴蝶在线观看免费中文版高清 | 色中色最新地址登陆 | 亚洲乱亚洲乱妇在线观看 | 小小水蜜桃视频高清在线观看免费 | 美女与男人对肌免费网站 | GAY东北澡堂激情2022 | 少妇厨房愉情理9伦片视频 少妇被躁爽到高潮无码久久 |