Vla*_*mir 4 php laravel laravel-5
任何人都可以帮助我使用 Laravel 登录用户,这是我的尝试:
public function execute($hasCode){
if(!$hasCode) return $this -> getAuthorizationFrist();
$user = $this->socialite->driver('facebook')->user();
echo $user->getNickname();
echo $user->getName();
echo $user->getEmail();
echo $user->getAvatar();
$login = new Guard();
$login ->loginUsingId(1);
}
Run Code Online (Sandbox Code Playgroud)
这是错误:
传递给 Illuminate\Auth\Guard::__construct() 的参数 1 必须是 Illuminate\Contracts\Auth\UserProvider 的一个实例,没有给出,在第 31 行的 /home/comment/public_html/bild/app/AuthenticateUser.php 和定义
您不能只是实例化,Guard因为它具有在创建时需要注入的依赖项。这是构造函数:
public function __construct(UserProvider $provider,
SessionInterface $session,
Request $request = null)
Run Code Online (Sandbox Code Playgroud)
您有几个选择:
Auth::loginUsingId(1);
Run Code Online (Sandbox Code Playgroud)
$auth = app('auth');
$auth->loginUsingId(1);
Run Code Online (Sandbox Code Playgroud)
在您要使用的类的构造函数中:
public function __construct(\Illuminate\Auth\Guard $guard){
$this->auth = $guard;
}
Run Code Online (Sandbox Code Playgroud)
在你的方法中:
$this->auth->loginUsingId(1);
Run Code Online (Sandbox Code Playgroud)
如果你得到
特性 'Illuminate\Auth\UserTrait'
对我来说,这听起来很像 Laravel 4(Laravel 5 不再具有此特性)您是否可能正在迁移您的应用程序?看看github上新的默认User模型
| 归档时间: |
|
| 查看次数: |
5177 次 |
| 最近记录: |