Discuz开发 JAVA和UCENTER开发中解决用户必须手工登录1次论坛的问题

[复制链接]
建站高手 发表于 2015-12-30 15:40:27 [Discuz开发] 显示全部楼层 |阅读模式 上一主题 下一主题
ad广告
ad广告

马上注册,一起探讨正确快速的建站方法

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
由于discuz论坛屏蔽了DISCUZ自带的注册、登录、找密等操作,所以必须要实现单点登录。当中遇到了一个非常蛋疼的问题:主站注册的账户同步到UCENTER之后,UCENTER并不会通知其他应用,也就是说默认情况下,其他应用(包括DISCUZ在内)无法在新用户注册之后立即更新用户列表。细细研究之后发现,DISCUZ是在本地注册、登录等事件中才会与UCENTER同步。这导致了,在主站新注册的用户,无法在BBS单点登录成功——因为在BBS中根本不存在这个用户。解决的方法有两个,一是用户手工登录一次BBS,BBS自带的机制会自动将用户信息从UCENTER同步过来;二是修改DISCUZ系统代码,在单点登录请求时自动同步用户数据。在权衡了各方面因素之后,决定采用第二套方案。以下是改动的代码:

/api/uc.php 192行:
游客,如果您要查看本帖隐藏内容请回复

参考以上代码修改即可




上一篇:JAVA和UCENTER整合中解决email必须填写的问题
下一篇:如何修改discuz门户文章内容字数限制

大神点评9

Skyfree 发表于 2015-12-31 22:00:57 [Discuz开发] 显示全部楼层
学习一下看看。
阿举 发表于 2016-1-12 15:31:17 [Discuz开发] 显示全部楼层
学习学习
小花兒 发表于 2016-3-31 08:41:36 [Discuz开发] 显示全部楼层
强烈支持,站帮网有你更精彩
xulinxi918 发表于 2016-4-2 13:08:33 [Discuz开发] 显示全部楼层
我只是路过站帮网打酱油的,顺便支持下
909157446 发表于 2016-4-2 18:23:01 [Discuz开发] 显示全部楼层
我只是路过站帮网打酱油的,顺便支持下
苏默颜calm 发表于 2016-5-9 16:59:41 [Discuz开发] 显示全部楼层
学习一下看看。
angelawawa 发表于 2016-8-29 16:12:09 [Discuz开发] 显示全部楼层
真的假的,不过还是先谢了
淘小淘 发表于 2019-6-5 16:08:31 [Discuz开发] 显示全部楼层
学习一下下
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

快速回复 返回顶部 返回列表