В моем приложении я использую логин из Steam API.
Когда пользователь проходит аутентификацию на Steam, приложение создает нового пользователя, если его нет в базе данных, иначе он приноситпользовательские данные.
В этом процессе, даже если я создаю или просто выбираю информацию о пользователе, я получаю массив от пользователя и выполняю Auth :: login ($ user, true);.
В этой функции это работает, если я отлаживаю Auth :: user (), он возвращает корректно.
В представлении я тоже могу использовать Auth :: guest (), и это работает.
Но если я перехожу на другую страницу, к которой могут присоединиться только зарегистрированные пользователи, Auth :: guest () возвращает true, Auth :: check () возвращает false, Auth :: user () возвращает NULL ... (на контроллере).
Как я могу получить доступ к методам аутентификации на новом контроллере?
Контроллер, который завершается ошибкой с аутентификацией:
<?php
namespace App\Http\Controllers\Profile;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\User;
use Auth;
class ProfileController extends Controller
{
public function __construct()
{
if(Auth::guest()) {
return redirect()->route('home');
}
}
public function index()
{
// die(var_dump(Auth::user()->id));
return view('pages/profile/profile');
}
}