`
popwang
  • 浏览: 59522 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多

1、用户登录discuz,通过logging.php文件中的函数uc_user_login对post过来的数据进行验证,也就是对username和password进行验证。

2、如果验证成功,将调用位于uc_client下client.php文件中的函数uc_user_synlogin,在这个函数中调用 uc_api_post('user', 'synlogin', array('uid'=>$uid))。

3、然后这个函数后向Ucenter的index.php传递数据,index.php接受传递的数据,获得model为user,action为synlogin的值。

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

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

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


应用程序的logging.php ------>uc_client中的client.php------>Ucenter------>应用程序中api/uc.php

      其实Ucenter实现同步登陆的原理就是cookie,一个应用登陆成功之后,向Ucenter传递数据,让Ucenter通知其他的应用也设置cookie,这样用户在访问其他应用的时候通过已经设置好的cookie实现自动登陆。了解了Ucenter的同步原理,再遇到无法同步登陆,或者开发一些与UCenter接口的时候就会容易很多。

 

login:

user(ajax or jquery)->login->(fun判断)->Ucenter_Func->return to user

.continue  run ajax or jquery  ->>send list of all URL(is made up with site  which is store in the UCenter and en encoded String(action and name)) to each site

then each code which worked on different sites works ,likes java , UC,it is a servlet, it decode the url and run the code , for example ,it returns cookies

 

logout:

user(ajax or jquery)->logout->(fun判断)->Ucenter_Func->return to user

.continue  run ajax or jquery  ->>send list of all (is made up with site  which is store in the UCenter and en encoded String(action and name)) each site

then each code which worked on different sites works ,likes java , UC,it is a servlet, it decode the url and run the code , for example ,it change every cookie to maxExpire=0

 

其余都相似。

分享到:
评论
2 楼 fenghoer 2011-12-02  
顶到底
1 楼 bulongwind 2011-11-25  
顶一个。

相关推荐

    详解ucenter原理及第三方应用程序整合思路、方法

    ### 详解uCenter原理及第三方应用程序整合思路、方法 #### 一、uCenter的功能与价值 uCenter作为一款强大的用户中心管理系统,不仅能够实现不同PHP应用程序之间的用户数据整合,还能跨语言支持ASP/ASP.NET/PHP/JSP...

    ucenter整合原理和流程

    **Ucenter 整合原理和流程详解** Ucenter 是 Comsenz 公司推出的一款用户整合解决方案,旨在统一管理多个应用中的用户数据,实现多应用之间的用户同步登录和信息共享。它由 Server 端和 Client 端两部分组成。 1. ...

    ucenter通信原理分析

    1、用户登录discuz,通过logging.php文件中的函数uc_user_login对post过来的数据进行验证,也就是对username和password进行验证。 ... 3、然后这个函数后向Ucenter的index.php传递数据,index.php接受...4、然后Ucenter的i

    UCenter 用户手册大全

    这份手册将帮助管理员深入理解UCenter的工作原理,并能有效地进行系统维护和优化。 描述中提到的"用户中心"是UCenter的核心理念,它强调了以用户为中心的设计思想,旨在提供一个统一的用户接口,使用户能够在不同的...

    ucenter会员系统对接类

    二、Ucenter工作原理 Ucenter的工作流程主要包括以下步骤: 1. **用户注册**: 用户在任一接入Ucenter的网站上注册,信息会被同步到Ucenter服务器。 2. **身份验证**: 当用户在其他接入网站尝试登录时,Ucenter会...

    ucenter.7z

    在本文中,我们将深入探讨Ucenter的工作原理、安装配置过程、常见问题以及如何调试通信成功,帮助开发者避免在使用过程中遇到的困扰。 一、Ucenter核心概念 1. 用户中心:Ucenter是整个系统的枢纽,负责管理所有...

    Ucenter文档

    本文将深入探讨Ucenter的功能、工作原理以及如何将其融入到你的PHP项目中。 一、Ucenter核心功能 1. 用户统一管理:Ucenter提供了一个中心化的用户数据库,所有关联的应用都可以共享这个用户库,用户只需要在一个...

    Ucenter数据字典及系统分析文档

    在“UCENTER研究”中,我们会发现涉及到Ucenter的工作原理和最佳实践。Ucenter采用中心化的用户认证方式,当用户在一个应用中注册或登录后,其信息会同步到Ucenter服务器,其他应用通过调用接口验证用户的身份。此外...

    JAVA_UCenter

    UCenter交互的API,理解API的设计原理和使用方法是使用JAVA_UCenter的关键,包括如何调用接口、传递参数、处理返回结果等。 3. **HTTP通信**:由于Discuz! UCenter 与Java应用之间的通信通常基于HTTP协议,因此...

    asp.net版ucenter接口程序源码_ucenterapi.zip

    - HTTP通信:了解HTTP请求和响应的原理,以及如何发送POST或GET请求。 - XML/JSON解析:Ucenter的API通常使用XML或JSON格式交换数据,因此需要能够解析和构建这些格式的数据。 - 安全性:处理用户敏感信息(如密码)...

    简单分析ucenter 会员同步登录通信原理

    UCenter是Comsenz旗下各个产品之间信息直接传递的一个桥梁,通过UCenter 站长可以无缝整合Comsenz系列产品,实现用户的一站式登录以及社区其他数据的交互。其实何止是comsenz系列产品,可以这么说整合了 ucenter 就...

    ucenter,uchome,discuz同步注册免激活同步登录

    总的来说,要实现这个功能,你需要理解Ucenter的API接口工作原理,熟悉PHP编程,以及对Ucenter、Uchome和Discuz! 的配置有深入的了解。确保正确配置和覆盖文件后,你的社区用户就能享受到便捷的一站式登录体验了。在...

    UCenter Home二次开发指南

    理解钩子的工作原理及其应用场景至关重要。 5. **数据缓存与性能优化**:对于大型社区,数据读取速度和性能优化是重要考虑因素。学习如何使用UCH的缓存机制,如Memcached或Redis,能显著提升网站性能。 6. **安全...

    ucenter的详细手册整合网站数据

    3. **同步机制**:解析Ucenter的数据同步原理,包括注册、登录、修改信息等操作的同步流程。 4. **权限控制**:讲解如何设置和管理用户的权限,保护用户数据的安全。 5. **数据管理**:涵盖用户数据的导入、导出,...

    ucenter中词语过滤原理分析

    以下是关于Ucenter词语过滤原理的知识点总结。 首先,过滤词语表是词语过滤功能的基础。这个表中存储了所有需要过滤的词语,以及用于替换这些词语的相应文本。通常,这个表中会有如下几个字段: - id:词语过滤的...

    Yii+Framework应用通过UCenter整合discuz视频教程

    2. **UCenter 集成原理**:理解 UCenter 的工作方式,包括用户认证、数据同步、API 接口调用等核心功能。UCenter 提供了多种接口,如用户注册、登录、资料修改等,使得其他应用能够与其无缝对接。 3. **Discuz! ...

    UCENTER 数据字典

    这个文档对于理解 UCENTER 的内部工作原理、进行数据库管理和开发相关应用非常重要。 1. **广告表 (ad)**: 这个表用于存储广告设置信息,包括广告ID(adid)、广告的有效性(available,通过 '1' 或 '0' 判断)、...

    ucenter开发手册_ucenter二次开发必备利器下载

    这份《Ucenter 开发手册》是针对Ucenter进行二次开发的重要参考资料,对于熟悉其工作原理和接口调用方法具有极高的指导价值。 1. 用户管理(user.htm) 在Ucenter中,用户管理是核心功能之一。通过API接口,开发者...

    asp.net版UCenter接口(开源)下载

    3. **文档**:可能包含API的使用说明、安装指南、示例代码等,帮助开发者快速上手和理解接口的工作原理。 4. **数据库脚本**:为了与UCenter进行数据交互,可能包含SQL脚本,用于创建必要的数据库表结构和初始化...

Global site tag (gtag.js) - Google Analytics