2017-04-20 3 views
0

나는 PHP 프로젝트를 의존성 관리자로 사용하도록 컨버전을하고 있습니다.Hybridauth + 작곡가 : 커스텀 프로 바이더를 추가하는 방법

의존성은 내 메인 스크립트에서이 행을 통해로드됩니다. 이러한 종속성의

require 'vendor/autoload.php';

하나는 hybridauth (버전 2.9)입니다. Composer를 사용하면 사용자 정의 공급자 파일을 찾을 때 '파일을 찾을 수 없음'오류가 발생합니다. 여기에 지금

$config_file_path = dirname(__FILE__) .'/hybridauth/config.php'; 
$hybridauth = new Hybrid_Auth($config_file_path); 

을 설정 파일입니다 :

는 예를 들어, 내 메인 컨트롤러는 다음과 하이브리드를 호출합니다. 내가 사용하는 공급자는 "Facebooktest"입니다. [wrapper] [path]를 통해 경로를 지정해야한다는 점에 유의하십시오. 배열 키를 눌러 다음 오류 메시지로 이동하십시오. (트레이스)

return 
array(
    "base_url" => WWWROOT."/auth", 
    "providers" => array(
     "Facebook" => array(
      "enabled" => true, 
      "keys" => array("id" => "xxxxxxx", "secret" => "xxxxxxxx"), 
      "scope" => "email", 
      "trustForwarded" => false 
     ), 
     "Facebooktest" => array(
      "enabled" => true, 
      "keys" => array("id" => "xxxxxxx", "secret" => "xxxxxx"), 
      "scope" => "email", 
      "trustForwarded" => false, 
      "wrapper"=> array(
       "class"=>'Hybrid_Providers_Facebooktest', 
       "path"=> './controllers/hybridauth/Hybrid/Providers/Facebooktest.php' 
      ) 
     ) 
    ), 
    "debug_mode" => false, 
    "debug_file" => "", 
); 

오류 메시지 :

require_once(/path/to/composer-project/vendor/hybridauth/hybridauth/hybridauth/Hybrid/thirdparty/Facebook/autoload.php): failed to open stream: No such file or directory 

[vendor/bcosca/fatfree/lib/base.php:2174] Base->error() 
[controllers/hybridauth/Hybrid/Providers/Facebooktest.php:61] Base->{closure}() 
[controllers/hybridauth/Hybrid/Providers/Facebooktest.php:61] require_once() 
[vendor/hybridauth/hybridauth/hybridauth/Hybrid/Provider_Model.php:99] Hybrid_Providers_Facebooktest->initialize() 
[vendor/hybridauth/hybridauth/hybridauth/Hybrid/Provider_Adapter.php:101] Hybrid_Provider_Model->__construct() 
[vendor/hybridauth/hybridauth/hybridauth/Hybrid/Auth.php:278] Hybrid_Provider_Adapter->factory() 
[vendor/hybridauth/hybridauth/hybridauth/Hybrid/Auth.php:230] Hybrid_Auth::setup() 
[controllers/auth-action.get.php:19] Hybrid_Auth::authenticate() 

나는 이상한 지금은 "공급 업체/hybridauth /"프로젝트 안에 경로를 수정해야한다는 것을 찾을 수 있습니다. 의존성 관리자를 사용하는 목적을 무효화합니다. 분명히, 내가 잘못하고있는 것 같습니다. 조언을 해 줄 수 있습니까?

답변

1

Check my answer to another question here 최근에 당신은 아마 같은 문제가 발생,/공급 업체 hybridauth하는 당신에서 공급 업체 경로를 대체 자신의 페이스 북 클래스에서 버그를 포함 v2.9.2을 다운로드 한 작곡가를 통해 Hybridauth를 설치 한 경우.

Facebook 클래스를 복사하여 해당 Facebooktest 클래스를 생성 한 것으로 의심되어 그 오류가 지속되었다고 생각합니다. dev 브랜치를 업데이트하고 Facebook 클래스를 복사하거나 다른 공급자 클래스를 사용자 정의 공급자 클래스의 템플릿으로 사용하십시오.

관련 문제