Ucenter可以銜接多個(gè)站點(diǎn)會員同步注冊、登錄,同進(jìn)同出,所以常用作會員整合解決方案,Thinkphp商城系統(tǒng)中如何集成UCenter呢?安菲云為您分享。
電商網(wǎng)站建設(shè)中ucenter的會員表中包含需要整合的Thinkphp商城系統(tǒng)等各個(gè)網(wǎng)站的所有會員,不管用戶在Thinkphp商城系統(tǒng)還是在網(wǎng)站注冊,程序都會將會員信息添加到了ucenter的會員表中,再添加到當(dāng)前網(wǎng)站的會員表里面,集成了UCenter的站點(diǎn)在會員登錄的時(shí)候,程序會先查詢ucenter會員表中是否存在該用戶,如果存在查詢當(dāng)前網(wǎng)站會員表中是否存在,如果不存在就證明該用戶是通過另外一個(gè)站點(diǎn)注冊的并且是在該站點(diǎn)第一次登錄,就需要把該會員添加到當(dāng)前站點(diǎn)的會員表中。
本文安菲云將采用Thinkphp 5.1的安菲開源多用戶商城系統(tǒng)為例,講解Thinkphp商城系統(tǒng)中如何集成UCenter.
實(shí)現(xiàn)過程:
1.準(zhǔn)備好Ucenter需要的參數(shù)、key,并設(shè)置。
2.在用戶登錄后觸發(fā)鉤子函數(shù):
/**
* 用戶登錄后執(zhí)行
*/
public function afterUserLogin($params){
//同步登錄到UC
if(isset($params['user']['datau']['uid']) &&
$params['user']['datau']['uid']>0){
$ucenter = new
\addons\ucenter\api\UcenterApi();
$uids =
$ucenter->synlogin($params['user']['datau']['uid']);
$rd =
['status'=>'1','msg'=>$uids."登錄成功"];//$uids返回在頁面上,才同步成功登陸
exit(json_encode($rd));
}
}
除此之外在用戶注冊、用戶修改密碼、用戶修改郵箱等操作都會調(diào)用相關(guān)鉤子函數(shù),目的是同步Ucenter中的數(shù)據(jù)。
Thinkphp商城系統(tǒng)中集成UCenter的代碼可以在安菲軟件官網(wǎng)下載,這里就不在贅述了,值得提醒的是:接入完畢后雙方的秘鑰一定要保持一致才能相互通信。今天的分享就到這里,大家有什么疑問的可以在文章底部留言我們哦。