Laravel 5 FatalErrorRexception Laravel 5社交名流Facebook登录
我刚刚开始使用Laravel,我正在尝试在我的项目中实现Socialite,以便登录Facebook,然后通过它注册用户。我一直在看关于拉腊卡斯特社交名流的教程,但我有一个错误: “AuthenticateUser.php第34行中的FatalErrorException:对非对象的成员函数driver()的调用” 我不知道为什么会发生这种情况,我会感谢你的帮助 这是我的密码Laravel 5 FatalErrorRexception Laravel 5社交名流Facebook登录,laravel-5,Laravel 5,我刚刚开始使用Laravel,我正在尝试在我的项目中实现Socialite,以便登录Facebook,然后通过它注册用户。我一直在看关于拉腊卡斯特社交名流的教程,但我有一个错误: “AuthenticateUser.php第34行中的FatalErrorException:对非对象的成员函数driver()的调用” 我不知道为什么会发生这种情况,我会感谢你的帮助 这是我的密码 AuthControllerclass: <?php namespace App\Http\Controllers
AuthController
class:
<?php namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\AuthenticateUser;
class AuthController extends Controller {
public function login(AuthenticateUser $authenticateUser, Request $request){
return $authenticateUser->execute($request->has('code'));
}// End function
}// End class
<?php namespace App;
use Illuminate\Contracts\Auth\Authenticator;
use Laravel\Socialite\Contracts\Factory as Socialite;
use App\Data\UserData;
class AuthenticateUser{
private $socialite;
private $auth;
private $users;
/* Constructor */
public function _construct(UserData $users, Socialite $socialite, Authenticator $auth){
$this->users = $users;
$this->socialite = $socialite;
$this->auth = $auth;
}// End constructor
/* @hasCode : boolean
*/
public function execute($hasCode){
if(!$hasCode)
return $this->getAuthorizationFirst();
$user = $this->socialite->driver('facebook')->user();
dd($user);
}
/* Método auxiliar para autorizar el login, si no se tiene el código de autorización */
private function getAuthorizationFirst(){
return $this->socialite->driver('facebook')->redirect(); //line 34
}
}
路线:
Route::get('/', function() {
if (Auth::check()) {
return 'Welcome back, ' . Auth::user()->username;
} else {
return 'Hi guest. ' . link_to('login', 'Login with facebook');
}
});
Route::get('login','AuthController@login');
构造函数的名称不正确。它应该以两个下划线开始:
public function __construct(UserData $users, Socialite $socialite, Authenticator $auth);
别担心。有时候只需要多一双眼睛。