facebook - 在 Hybridauth 中为 Yii 框架配置 Facebook

标签 facebook twitter yii hybridauth

我正在使用 Yii 框架和 HybridAuth 进行社交登录操作,我有 google 和 yahoo 工作正常,但我不能让 facebook 和 twitter 工作。

我需要一个 Https://域名吗?还是只是要添加一些配置?

当我尝试使用 facebook 或 twitter 登录时,我收到此 PHP 警告:

include(DefaultController.php) [function.include]: failed to open stream: No such file or directory

错误出现在 vendors\yii_1.1.10\YiiBase.php(418):

{
407                     foreach(self::$_includePaths as $path)
408                     {
409                         $classFile=$path.DIRECTORY_SEPARATOR.$className.'.php';
410                         if(is_file($classFile))
411                         {
412                             include($classFile);
413                             break;
414                         }
415                     }
416                 }
417                 else
418                     include($className.'.php');
419             }
420             else  // class name with namespace in PHP 5.3
421             {
422                 $namespace=str_replace('\\','.',ltrim($className,'\\'));
423                 if(($path=self::getPathOfAlias($namespace))!==false)
424                     include($path.'.php');
425                 else
426                     return false;
427             }
428             return class_exists($className,false) || interface_exists($className,false);
429         }
430         return true;

这是我的主要配置文件

'modules'=>array('admin',
        'hybridauth' => array(
            'baseUrl' => 'http://'. $_SERVER['SERVER_NAME'] . '/hybridauth', 
            'withYiiUser' => false, // Set to true if using yii-user
            "providers" => array ( 

                "yahoo" => array ( 
                    "enabled" => true 
                ),

                "google" => array ( 
                    "enabled" => true,
                    "keys"    => array ( "id" => "[private]", "secret" => "[private]" ),
                    "scope"   => ""
                ),

                "facebook" => array ( 
                    "enabled" => true,
                    "keys"    => array ( "id" => "[private]", "secret" => "[private]" ),
                    "scope"   => "email,publish_stream", 
                    "display" => "" 
                ),

                "twitter" => array ( 
                    "enabled" => true,
                    "keys"    => array ( "key" => "[private]", "secret" => "[private]" ) 
                )
            )
        )
    ),

最佳答案

尝试导入 hybridauth 文件:

config/main.php

'import'=>array(
    ...
    // for hybridauth
    'application.modules.hybridauth.controllers.*',
    ...
),

关于facebook - 在 Hybridauth 中为 Yii 框架配置 Facebook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14265848/

相关文章:

web-applications - 情感分析使推文与搜索查询匹配并进行分析

javascript - 是否有开箱即用的 Javascript "Tweet this"链接解决方案和 URL 缩短,它不会急切地从其他域加载文件?

twitter - 如何聚合来自 Google、Twitter、YouTube、Facebook 等的分析

php - Yii 多重关系

xcode - Cordova Xcode 部署 - CFBundleSupportedPlatforms 或 Mach-O LC_VERSION_MIN for A

php - 在没有用户交互的情况下刷新 facebook 长期访问 token

php - Yii findAllByAttributes 单个表中两个日期之间的值

css - Yii C菜单和CSS

objective-c - 请求用户信息时出现Facebook iOS SDK错误

android - 使用 Facebook 等从 Android 客户端登录到 Openfire 服务器