没有不值得去解决的问题,也没有不值得去学习的技术!

在UCenter下整合phpcms、tipask,发现通过phpcms登录,可以同步至tipask,但是通过phpcms退出,不能够同步至tipask的解决实现!

在phpcms中退出提示退出成功,查看源代码,可以看见已经发现同步js通知
在phpcms中登录提示登录成功,查看源代码,可以看见已经发现同步js通知
在phpcms中登录提示登录成功,查看源代码,可以看见已经发现同步js通知
在phpcms中退出提示退出成功0,查看源代码,可以看见同步js通知代码为0
在phpcms中退出提示退出成功0,查看源代码,可以看见同步js通知代码为0

分析代码执行流程:

1、kchmc.net/phpcms/modules/member/index.php

$synlogoutstr = $this->client->ps_member_synlogout();

2、kchmc.net/phpcms/modules/member/classes/client.class.php

修改为如下:

/**
* 同步退出
* @param string $uid
* @return string javascript用户同步退出js
*/
public function ps_member_synlogout() {
//return $this->_ps_send(‘synlogout’, array());
return $this->_ps_send(‘synlogout’, array(‘synlogout’=>1));
}

3、kchmc.net/phpsso_server/phpcms/modules/phpsso/classes/phpsso.class.php

原因在于红框中所标示的缘故:

如果$this->data为空,则返回0
如果$this->data为空,则返回0

4、修改后的结果如下:

在phpcms中退出提示退出成功,查看源代码,可以看见已经发现同步js通知
在phpcms中退出提示退出成功,查看源代码,可以看见已经发现同步js通知

关于作者 · 持续学习与技术实践

我是一名拥有 15 年以上开发经验的技术从业者,自 2013 年起持续运营个人技术博客,记录工作与个人项目中遇到的真实问题,以及解决问题过程中的探索、实践和思考。

除了技术写作,我也在持续开发和维护自己的独立项目,探索新技术和新工具在实际场景中的应用。我始终相信,没有不值得去解决的问题,也没有不值得去学习的技术。

如果这篇文章对你有所帮助,欢迎浏览博客中的其他文章,也欢迎交流技术经验与想法。

关于我  ·  GitHub  ·  邮件联系