Laravel 重定向登录,主要 URL
Laravel redirect login, main URL
我配置了 Laravel 身份验证系统并且可以正常工作。当用户登录时,他将被重定向到他的仪表板。但是当它关闭页面或修改主 URL www.xyz.com 时,它不会重定向到仪表板。当他登录并访问主要 URL?
时,如何将用户重定向到他的仪表板
LoginController.php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Auth;
use Illuminate\Http\Request;
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = '/iboard';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest', ['except' => ['logout', 'userLogout']]);
}
/**
* Get the needed authorization credentials from the request.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
protected function credentials(Request $request)
{
$field = filter_var($request->get($this->username()), FILTER_VALIDATE_EMAIL)
? $this->username()
: 'username';
return [
$field => $request->get($this->username()),
'password' => $request->password,
];
}
public function userLogout()
{
Auth::guard('web')->logout();
return redirect('/logout');
}
}
这是一个简单的解决方案,当用户访问页面时www.xyz.com您可以使用
检查用户是否已登录
use Illuminate\Support\Facades\Auth;
if (Auth::check()) {
//Executes when user is logged in
return redirect('dashboard');
}
以上代码检查用户是否登录,如果登录则他被重定向,否则他不会被重定向并且仍然在 www.xyz.com。
希望这个答案对您有所帮助。
这里有一些很酷的东西,你可以用 laravel auth 做一些很酷的事情:- https://laravel.com/docs/5.5/authentication
当用户访问 root 时简单地重定向用户,例如,您可以将其添加到您的 web.php(或 routes.php,如果版本 <= 5.2)
Route::get('/', function () {
return redirect('dashboard');
});
我配置了 Laravel 身份验证系统并且可以正常工作。当用户登录时,他将被重定向到他的仪表板。但是当它关闭页面或修改主 URL www.xyz.com 时,它不会重定向到仪表板。当他登录并访问主要 URL?
时,如何将用户重定向到他的仪表板LoginController.php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Auth;
use Illuminate\Http\Request;
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = '/iboard';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest', ['except' => ['logout', 'userLogout']]);
}
/**
* Get the needed authorization credentials from the request.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
protected function credentials(Request $request)
{
$field = filter_var($request->get($this->username()), FILTER_VALIDATE_EMAIL)
? $this->username()
: 'username';
return [
$field => $request->get($this->username()),
'password' => $request->password,
];
}
public function userLogout()
{
Auth::guard('web')->logout();
return redirect('/logout');
}
}
这是一个简单的解决方案,当用户访问页面时www.xyz.com您可以使用
检查用户是否已登录use Illuminate\Support\Facades\Auth;
if (Auth::check()) {
//Executes when user is logged in
return redirect('dashboard');
}
以上代码检查用户是否登录,如果登录则他被重定向,否则他不会被重定向并且仍然在 www.xyz.com。
希望这个答案对您有所帮助。
这里有一些很酷的东西,你可以用 laravel auth 做一些很酷的事情:- https://laravel.com/docs/5.5/authentication
当用户访问 root 时简单地重定向用户,例如,您可以将其添加到您的 web.php(或 routes.php,如果版本 <= 5.2)
Route::get('/', function () {
return redirect('dashboard');
});