ucenter单点登录原理是跨域设置用户信息。
实现的关键:

  1. ucenter文件与应用的融合
    融合方式包括模块,或第三方库,如果将ucenter做成自己应用的模块,建议对ucenter中client.php中的方法进行封装处理。如果是第三方库,可以在应用的登录、登出时,直接调用相关函数,但是前提是引入配置文件(这里是ucenter中的配置信息)和client.php。

  2. ucenter文件的调用
    核心文件包括uc.php, client.php,建议深度阅读client.php文件中的相关函数。

  3. 创建应用
    本地或服务器安装ucenter,然后创始人登录后,在左侧菜单选择<应用管理>中添加新应用(自定义),配置相关信息(如名称、url、秘钥、类型、接口文件类型,开启同步登录),提交后创建成功的同时,会在底部生成相关的配置信息(重要),需要你配置到你的应用中,否则通信失败。

  4. 当通信成功后,你需要做的就是在应用的登录、登出逻辑中添加ucenter的注册、登录逻辑即可。这样就实现了该功能,效果就是当用户登录应用时,该用户也会同步登录ucenter。在ucenter中的用户管理菜单下,看到该用户。

  5. 配置文件分析

//注意,如果是应用和ucenter都在一个服务器上,那么对应的值是mysql, 如果不在,值是NULL
define('UC_CONNECT', 'NULL');//同一个服务器可用localhost, 不在,值为ucenter服务器ip
define('UC_DBHOST', 'ip'); //mysql用户名
define('UC_DBUSER', 'root');//mysql密码
define('UC_DBPW', 'xxx');//ucenter数据库名称
define('UC_DBNAME', 'xxx');//ucenter数据库编码
define('UC_DBCHARSET', 'gbk');//ucenter数据库表前缀
define('UC_DBTABLEPRE', '`xxx`.uc_');//数据库持久化连接,no
define('UC_DBCONNECT', '0');//应用与ucenter通信密钥
define('UC_KEY', '123456');
define('UC_API', 'http://域名/ucenter');
define('UC_CHARSET', 'gbk');
define('UC_IP', '');//在ucenter中创建的应用的id
define('UC_APPID', '2');
define('UC_PPP', '20');

当然通信失败有必要原因罗列一下:

  1. UC_APPID不同
  2. UC_KEY不同
  3. ucenter与应用不在同一服务器,将配置信息设置如下:
define('UC_CONNECT', 'NULL');
define('UC_DBHOST', 'ip');

大致就讲这些吧,client中函数自己去看吧,本人是拿yii2.0与ucenter进行结合的,希望对用到这些的朋友有用!

ucenter单点登录相关推荐

  1. UCenter单点登录,同步登录,同步登出原理

    UCenter同步流程: 前提是需要在Ucenter上面添加好需要同步登录的应用(至少2个才能看到效果),并且显示:通信成功 假如我添加了A,B两个应用网站 1.首先当A站登录时,登录成功后,处理实质 ...

  2. php ucenter,单点登录 Ucenter示例分析

    首先我们先来了解下Ucenter登录步骤 1.用户登录discuz,通过logging.php文件中的函数uc_user_login对post过来的数据进行验证,也就是对username和passwo ...

  3. php ucenter单点登录,UCenter的应用整合与单点登录分析

    一直在用康盛的产品,自然少不了单点登陆,最近重新研究了下ucenter的机制,其实它的基本原理就一句话:跨域设置用户信息.下面只对用户登陆做比较详细说明,其他注册.PM等操作其实原理差不多. 用户登陆 ...

  4. java和Discuz论坛实现单点登录,通过Ucenter(用户管理中心)

    果学网-专注IT在线www.prismcollege.com 1,按照下面各大链接的教程,把Base64,Client,PHPFunctions,UC,XMLHelper加入web程序. 2,修改we ...

  5. java php 单点登陆,cas实现单点登录,登出(java跟php客户端)(转)

    cas实现单点登录,登出(java跟php客户端)(转)cas实现单点登录,登出(java和php客户端) (转) 最近项目中需要做单点登录,客户端包含java和php,java有几个应用程序,php ...

  6. java UCnter 单点登录 对接。

    java UCnter 单点登录 对接. 前提 PHP项目要部署成功.论坛能正常访问. 先配置 应用 1.是论坛应用 4.是java服务器,也就是你java登录的项目. 必须通信成功. .主应用IP就 ...

  7. php java 单点登录_用cas来实现php的单点登陆

    最近项目中需要做单点登录,客户端包含Java.ruby和PHP,java有几个应用程序,php是discuz+supesite+ucenter,配置步骤如下: 1.cas服务端:下载地址:http:/ ...

  8. 单点登录系统(SSO)的开发思路

    单点登录系统的类别:       就目前比较流行的应用来看,单点登录系统主要分为三种类型:一种是基于oauth协议的网络令牌(我是这么叫的),一种是基于Web Service或者简单Http协议实现的 ...

  9. springboot整合soo单点登录

    简介单点登录(Soo) 使用token技术完成单点登录 使用jwt规则创建token 导入依赖 <!-- JWT--><dependency><groupId>io ...

最新文章

  1. CPU/GPU/TPU/NPU...XPU都是什么意思?
  2. 大话设计模式之简单的工厂模式
  3. 【OpenCV 4开发详解】轮廓外接多边形
  4. RabbitMQ系列之【启动过程中遇到问题及解决方案】
  5. 学python买什么电脑-学Python买什么笔记本电脑?
  6. Hive 1.1.1 启动错误
  7. ubuntu apt-get常用命令
  8. Pytorch 版YOLOV5训练自己的数据集
  9. Shell——输入/输出重定向
  10. 怎样看出一个初创公司的实力?
  11. 理解js的prototype原型对象
  12. 银行系统数据流图-盒图-软件结构图对应一例
  13. 两个冲击函数相乘的傅里叶变换_通信第三章常见函数的傅里叶变换.ppt
  14. 关于Win10家庭版安装VirtualBox时的一些问题(e.g.报错2203)
  15. 可汗学院金融学笔记系列
  16. 传智播客开课的第四天
  17. 近百个Android优秀开源项目
  18. 低代码(low-code)又又又出圈了
  19. 乐Phone叫板IPhone 终极武器或为汉王?
  20. HCNP——默认路由和浮动静态路由

热门文章

  1. Love of my life吉他谱
  2. c++: 已经声明过变量,依然报 C2065:未声明的标识符错误 解决办法
  3. linux相关-ubuntu使用ssh public key登陆
  4. 最新出炉--IOS自动化测试环境搭建(Python Java)
  5. [重要新功能]删除自己发表的评论
  6. CF1631F. Flipping Range dp **
  7. 【HDU】5761 Rower Bo
  8. Web网页如何实现QQ好友,QQ空间,微博分享
  9. FAR PASCAL 的解释
  10. 网页模板设计中5种常见的设计版式类型介绍