IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁網(wǎng)絡(luò)編程PHP編程 → 詳解ucenter原理及第三方應(yīng)用程序整合思路、方法

詳解ucenter原理及第三方應(yīng)用程序整合思路、方法

時間:2015-06-28 20:07:48 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)

整合了 ucenter就等于整合了整個php界的所有php程序。

一、功用:
不對,何止整合了整個php界的所有php程序,而是整合了 ucenter就等于整合了所有的asp/asp.net/php/jsp等其它語言的所有web應(yīng)用程序。(因為ucenter client的api開發(fā)包,dz會推出其它語言版)

而且所有整合的程序同步登錄,同步退出,同步修改密碼。最終用戶可以通過它輕松通行在各個應(yīng)用之中,無需重復(fù)登錄、注冊、退出

一個id可以出入一個站內(nèi)的所有程序,如cms和bbs,也可以一個id出入www.a.com和www.b.com及www.c.com

a.com的用戶可以和b.com的用戶互發(fā)短消息pm,a.com的用戶可以和b.com的用戶加好友。

而且可以實現(xiàn)站內(nèi)信(pm)和其它任意站的任意程序的站內(nèi)信(pm)互通。

可以實現(xiàn)www.a.com與www.b.com及www.c.com共享一個用戶庫,www.a.com的用戶可以給www.b.com的用戶pm短信.

用戶組與discuz不對應(yīng)的問題也得到解決。因為一般應(yīng)用程序的用戶組是單獨的一個應(yīng)用,和discuz再沒有關(guān)系,而是和ucenter有關(guān)系,而ucenter沒有用戶組的概念。


二、整合方法:
如果單說整合用戶的話,整合時應(yīng)用程序的改動也非常小,數(shù)據(jù)庫不用動,原寫cookies的代碼不用動原寫數(shù)據(jù)庫session的代碼不用動,原來的程序不用怎么動,只需改動以下4個文件:

longin.php??register.php??logout.php??修改密碼文件.php??(忘記密碼.php不用動,用原來的就可以)

4個文件中加上和ucenter api通信的語句和邏輯結(jié)構(gòu)。

另需要針對ucenter新增加一個文件uc.php,這個文件就是應(yīng)用程序接收ucenter傳來的指令并執(zhí)行的文件。而且他利用p3p技術(shù)實現(xiàn)反向登錄a.com或是同時反向登錄a.com/b.com/c.com的dedecms或是phpcms或是任意所有程序。


共計改4個文件,增一個文件。


如果要是整合站內(nèi)信pm,好友,頭像等功能,思路與方法和整合用戶類同。

另外有一點,在不同的系統(tǒng)之間注冊的用戶,在第一次登錄這個從來沒有登錄過的系統(tǒng)時,會讓激活。借用這個激活,可以讓用戶完善在本應(yīng)用程序中的資料,如企業(yè)注冊資料。資料不完善,不可以激活。

如在bbs注冊一個用戶test,第一次來到b2b的程序中,這時,并不會自動登錄,而是要求用戶激活,而test在bbs注冊時填的字段與b2b中要求的不同。這時讓用戶完善資料。第二次來就會自動登錄。


三、 uc原理:

以用戶登錄為例介紹,其它注銷,改密碼,消息,頭像,好友均類同。

1.
從用戶xxx在某一應(yīng)用程序的login.php,輸入用戶名,密碼講起。
先用uc_user_login函數(shù)到uc server驗證此用戶和密碼,如正確,則寫入session,寫入cookies,并更新應(yīng)用程序會員表中的登錄ip,登錄時間。用戶感覺不到這個過程。
2.
然后通過uc_user_synlogin通知uc server 用戶xxx登錄成功,這個過程可能使用ajax,用戶感覺不到通知過程。
3.
uc server收到這個消息后,馬上命令手下,把xxx登錄的消息,像令牌環(huán)一樣,發(fā)給所有愿意接收(后臺中那個是否開啟同步登錄)這個消息的其它應(yīng)用程序。其實就是帶參數(shù)訪問一下各應(yīng)用程序的uc.php,用戶感覺不到這個過程。
4.
各應(yīng)用程序靠api下的uc.php來接收uc server發(fā)來的消息,并對uc server言聽計從,讓干什么就干什么?,F(xiàn)在,收到讓xxx用戶在你的程序中登錄的命令,馬上執(zhí)行。
并寫本應(yīng)用程序的session,并且使用p3p, 寫入相同域或不同域的cookies.??用戶感覺不到這個過程。

5.最后所有和uc整合的程序,xxx均登錄成功。用戶從www.test.com/bbs登錄后, 跳到www.test.com/news同樣顯示登錄。因為bbs 和news系統(tǒng)在后臺均已登錄。

6.應(yīng)用程序與uc server的會話結(jié)束。


得益于uc設(shè)計的精巧過程,整個過程,用戶完全感覺不到ucenter的存在.這是整合程序歷史上的創(chuàng)新。

關(guān)鍵詞標簽:ucenter

相關(guān)閱讀 UCenter安裝篇:Windows 環(huán)境搭建推薦教程 原神多莉是幾星角色-原神多莉技能一覽 江南百景圖鯉魚怎么獲得-江南百景圖鯉魚獲取攻略 暗黑破壞神不朽神秘任務(wù)怎么完成-神秘任務(wù)完成攻略 跟我學(xué)SQL:九datetime和interval數(shù)據(jù)類型 魔獸世界懷舊服熔火之心的傳送門任務(wù)-魔獸世界懷舊服熔火之心的傳送門任務(wù)怎么做

文章評論
發(fā)表評論

熱門文章 plsql developer怎么連接數(shù)據(jù)庫-plsql developer連接數(shù)據(jù)庫方法 plsql developer怎么連接數(shù)據(jù)庫-plsql developer連接數(shù)據(jù)庫方法 2021年最好用的10款php開發(fā)工具推薦 2021年最好用的10款php開發(fā)工具推薦 php利用淘寶IP庫獲取用戶ip地理位置 php利用淘寶IP庫獲取用戶ip地理位置 在 PHP 中使用命令行工具 在 PHP 中使用命令行工具

相關(guān)下載

人氣排行 詳解ucenter原理及第三方應(yīng)用程序整合思路、方法 plsql developer怎么連接數(shù)據(jù)庫-plsql developer連接數(shù)據(jù)庫方法 PHP中防止SQL注入攻擊 PHP會話Session的具體使用方法解析 PHP運行出現(xiàn)Notice : Use of undefined constant 的解決辦法 PHP如何清空mySQL數(shù)據(jù)庫 CakePHP程序員必須知道的21條技巧 PHP采集圖片實例(PHP采集)