【问题标题】:HybridAuth redirect loop with Yii in facebook authentication在 Facebook 身份验证中使用 Yii 的 HybridAuth 重定向循环
【发布时间】:2014-04-18 10:00:04
【问题描述】:

我知道关于这个问题有很多问题,因为他们没有帮助我,所以我问了一个新问题。

让我告诉你我是如何尝试整合的。我的控制器 actionIndexactionDone 中有两个动作。

在第一个动作中,我尝试对用户进行身份验证(如果已经通过身份验证,我会获取用户信息并将其保存到我的数据库中),在第二个动作中,我只包含混合 index.php(以处理混合身份验证)。

我要说的最有趣的事情是 这在 localhost 上完美运行,但在 live server 中却不行

这真的很烦人并且浪费了很多时间。 这是两个动作的代码:

$ha = $this->_getHA(); //i'm just bring files here
$adapter = $ha->authenticate('facebook');

if ($adapter->isUserConnected()) {

  // get user profile
  $profile = $adapter->getUserProfile();

  /*
   * If user has authenticated already
   */
  $social_id = (int) $profile->identifier;

  ....
  }
}

第二次行动:

 public function actionDone() {

  $path = Yii::getPathOfAlias("ext.hybridauth.index") . '.php';
  require $path;


}

注意:我确定我的 base_url 是正确的。

感谢您提前提供帮助。

【问题讨论】:

  • 很多人因为循环登录而面临这个程序。我的意思是你有方法 M 需要登录,然后它重定向到登录。但不知何故(由于访问限制)登录方法本身需要用户登录,因此它会无限重定向自己。检查这是否不是问题。我不熟悉 HA,所以在这里帮不上忙!

标签: php yii hybridauth


【解决方案1】:

我也多次遇到同样的问题。您的服务器基本路径未正确配置。你只需检查这个变量

   $path = Yii::getPathOfAlias("ext.hybridauth.index") . '.php';

尝试通过这种方式改变它可能会有所帮助

 $path = Yii::getPathOfAlias("ext.hybridauth") .'/index.php';

【讨论】:

  • 在检查之前尝试打印 $path 变量
  • 感谢您的回答,我的方法没有您的正确。顺便说一句,我测试了但什么也没发生,
【解决方案2】:

然后,您可以在控制器中获取 Hybrid_Auth 对象:

$ha = Yii::app()->getModule('hybridauth')->getHybridAuth();
$facebook = $ha->getAdapter('facebook');
$facebook->setUserStatus('Hi');

use this

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多