2016-07-03 10 views
0

Ich bin dieses Fehler müde, ich habe alles perfekt eingerichtet.Laravel socialite Authentifizierungsinstanz von Laravel Socialite Two User angegebene Fehler

Routen:

Route::get('facebook', ['as' => 'facebook', 'uses' => 'UserControllers\[email protected]']); 
Route::get('callback', ['as' => 'callback', 'uses' => 'UserControllers\[email protected]']); 

Funktion:

public function facebookLogin() 
{ 
    return Socialite::driver('facebook')->redirect(); 
} 

/** 
* Obtain the user information from facebook. 
* 
* @return Response 
*/ 
public function callBack() 
{ 
    $user = Socialite::driver('facebook')->user(); 
    auth()->login($user); 
    return redirect('/home'); 

    // $user->token; 
} 

$ user = Benutzer :: create ([ 'name' => $ user-> getName(), 'email' => $ user-> getEmail()]);

Wenn ich Benutzer in der Datenbank wie auth()->login($user); erstellt, wirft keinen Fehler. aber mit nur fb zurückgegebenen Objekt wirft er diesen Fehler. Jetzt ist dies klar, ich sollte use Illuminate\Contracts\Auth\Authenticatable; dies in meinem Benutzermodell verwenden. So fand eine Lösung und fügte diese Zeilen User Model.

use Illuminate\Contracts\Auth\Authenticatable; 
use Illuminate\Auth\Authenticatable as AuthenticableTrait; 
class User extends Eloquent implements Authenticatable 
{ 
    use AuthenticableTrait; 

aber es wirft immer noch den gleichen Fehler.

enter image description here

Antwort

0

Die Socialite user() und Ihr User Modell sind zwei verschiedene Dinge.

Ihr User Modell wird auf die in der Datenbank gespeicherten Informationen im Zusammenhang während der user durch socialite kehrte in die Informationen, die Ihnen von Facebook (oder einem anderen Anbieter) gegeben verwandt ist

Sie weitere Informationen über die Anmeldung eines Benutzers finden durch Sociliate Laravel 5.2 Socialite Facebook Login

Verwandte Themen