从discuz里扣出的ucenter整合代码下载

weixin_39822095 2019-06-17 09:00:16
官方示例太麻烦,总是通信不成功,杂七杂八的代码太多,没办法从论坛里把里面的整合代码扣出来,

登陆ucenter新建一个应用,
修改config.inc.php文件里相应参数,UC_KEY必须与刚新建的应用key一致,修改好后,看看通信是否成功,再运行test.php如果有输出表示可以同步了
相关下载链接://download.csdn.net/download/lxj8749/2594428?utm_source=bbsseo
...全文
10 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
1、UCenter建议使用GBK版本,原因是PHP4/5对UNICODE(UTF-8)的支持不足,分解出来的数字与其他支持UNICODE的语言不同,以至于authcode的时候将出现偏差,非拉丁文本将不匹配,即导致中文用户名无法正常同步。但其他语言的API可以使用UTF-8,再在 authcode之前将文本转换成GBK即可。 2、java下有一个UCenter的API,可以较方便的在Java环境下调用UCenter接口,地址是 http://code.google.com/p/discuz-ucenter-api-for-java/,创始人是ping.china。 Snow_Young也有重新开发一个API的想法,以更符合Java的开发习惯,同时希望可以找到途径以解决UTF-8的问题。 3、登入、登出等操作的同步,使用post方式调用UCenter的API接口,如果成功,将返回一段代码,其代码输出到页面将达到跨域请求各应用,应用获得请求后自行进行cookie或session的操作。 4、注册等非同步操作,将不会自动进行同步操作,其他应用在调用数据前应先检查UCenter时候存在更新信息,并将更新信息同步到自身数据库中。例如注册操作,如果用户在例如Java端注册,那么Java端将告诉UCenter注册信息,UCenter将信息存入UCenter数据库中,此时将不进行同步。之后若用户在Discuz!论坛登陆,Discuz!首先将查看自身数据库,若没有,再去请求UCenter获得更新信息,并询问用户是否激活,待用户确认后,才将用户的资料写入Discuz!论坛数据库中。 5、关于UCenter的接口,请下载或直接在线访问Discuz!论坛UCenter开发区置顶帖的API文档。 6、UCenter API文档中函数的调用方法: integer uc_user_register(string username , string password , string email [, integer questionid , string answer]) 以此为例,将函数名分解为user和register,我们可以调用UCenter的index.php,post内容为: m : user a : register release : 1.5 inajax : 1(此参数若不存在,将出现一个跳转div,仅限PHP,所以在此处随意赋上一个值即可) appid : 3(此为其他语言应用在UCenter中的id) input : 将所有附加参数的键值对Map经过authcode之后得到的加密字符串 本文来自编程入门网:http://www.bianceng.cn/Programming/Java/201101/23321.htm
74cms整合ucenter文件包 修改代码: 1:将api和uc_client2个文件夹放入根目录。 2: 在admin/templates/default/sys/admin_left_tools.htm这个文件中添加:
  • 一键整合UCenter
  • 3: 修改include/fun_user.php: 在 $success=false;后面增加 } } if(defined('UC_API') && $uc_login) { include_once(QISHI_ROOT_PATH.'uc_client/client.php'); $account=$usinfo['username']?$usinfo['username']:$account; list($uc_uid, $uc_username, $uc_password, $uc_email) = uc_user_login($account,$password); if ($uc_uid>0) { $login['uc_login']=uc_user_synlogin($uc_uid); if ($success==false)//UC成功74失败就注册,注册用户为UC的用户名, { global $_CFG; $_SESSION['activate_username']=$uc_username; $login['qs_login']=$_CFG['main_domain']."user/user_reg.php?act=activate"; } } elseif($uc_uid === -1 && $success)//74成功,UC失败,就注册到UC { $uc_reg_uid = uc_user_register($usinfo['username'], $password, $usinfo['email']); if ($uc_reg_uid>0) { $login['uc_login']=uc_user_synlogin($uc_reg_uid); } 4: 复制admin_uc_setting.php文件到admin下,复制admin_uc_fun.php到admin/include下。 5:复制文件夹uc到admin/templates/default/下。 6: 复制activate.htm到templates/default/user/下面。 7:将UCenter整合文件(即:upload改为ucenter)放在根目录下面。 安装步骤: 1:安装74CMS。 2:安装ucenter。 3:在74CMS后台-工具-一键安装UCENTER。 4:进入UCENTER管理平台,将对应的应用的主 URL后面的"/"删除。 (备注:由于是自动获取地址,所以在抓取主站数据的时候默认带有"/",但经测试不删除也能同步) 5:安装DISCUZ(选择已安装UCENTER)。 本人调试过直接安装discuz的时候整合UCENTER一起安装,但是论坛登入登出时主站无法同步,目前没找出原因。 欢迎大家交流,本人QQ 65016198, 群:203643352

    12,889

    社区成员

    发帖
    与我相关
    我的任务
    社区描述
    CSDN 下载资源悬赏专区
    其他 技术论坛(原bbs)
    社区管理员
    • 下载资源悬赏专区社区
    加入社区
    • 近7日
    • 近30日
    • 至今
    社区公告
    暂无公告

    试试用AI创作助手写篇文章吧