• UCenter uc_user_synlogin同步登陆返回值为空(NULL)的解决办法 及 ucenter原理


    第一种方法
    最近刚刚接触UCenter,很多问题不是很理解,只是在摸索着、尝试着做,就在刚才有解决了一个问题,虽然不知道解决问题的具体原理,但是还是实现了同步登陆。
    首先我是在本地测试的,也就是localhost,用uc_user_synlogin会返回一段html代码,这段代码就是实现同步登陆的关键,但是我试了一下,并没有同步成功,具体查看返回的html代码,结果是空的,后来网上找了很多解决方法都没有能解决我的问题,最后无意中我把程序的UCenter程序配置文件中的
    define('UC_API', 'http://localhost/ucenter');  
    修改为了
    define('UC_API', 'http://127.0.0.1/ucenter');
    结果就登陆成功了,虽然不知道解决的具体原因,但是希望能帮助和我一样刚刚接触UCenter的朋友

    第二种方法:如果以上方法还是无法帮助你解决问题的话,你可以尝试一下下面的方法:
    研读过ucenter 的原理后,再结合测试 ucenter + modoer + discuz X 1.5 + ecshop 2.7.2 实现了完美的同步登入和退出 

    发现一个简单的方法就是,把ucenter 的data/cache/apps.php 文件复制到各个系统的 uc_client/data/cache/apps.php 

    就可以解决大半的同步问题 
    检查过上面问题后,再检查各个系统的关于ucenter 的配置处,确保key和uc里面的一致,然后清空各系统缓存,测试

    http://www.edbiji.com/doccenter/showdoc/69/nav/818.html

    首先有两个测试站点,但是uc_client放错了位置,要粘贴进每个站点里面,然后,要修改uc.php和登陆文件里面所有涉及到的文件路径,官方的例子并没有说明这一点

    看文件是否包含成功,可以在被包含的文件里面用echo打印出来一些东西

     

    登陆一个站点后查看静态页源码

    发现引用的uc的方法用js遍历了一个些东西,就是请求了很多的api登陆接口

    js的遍历认证是以这个apps.php为依据的

    如果通信成功了,uc就会生成一个apps.php,里面有一个数组,其实就是方便刚才登陆的时候用js遍历所有的站点,并一一认证

  • 相关阅读:
    “error LNK1169: 找到一个或多个多重定义的符号”的解决方法(转载)
    std::ostringstream 转std::string
    【转载】红外感应模块+蜂鸣器实现简易报警
    分割字符串使用空格
    优秀程序员的 18 大法则【转载】
    解决win10 iot VS编程出现的无法引用错误
    [转载] 程序员如何成功追到女神?
    win8/win10/win2012r2 存储池 冗余分析
    [转载][NAS] 使用win8的“存储池”功能~
    mySQL中删除unique key的语法 (删除某个字段的唯一性)
  • 原文地址:https://www.cnblogs.com/hellowzd/p/5885000.html
Copyright © 2020-2023  润新知