미들웨어로 처리하시면 됩니다!
미들웨어로 로그인한 사용자라면 $next 사용해서 넘겨버리면 되고, 로그인하지 않은 사용자라면 redirect 걸면 됩니다.
public function handle($request, Closure $next, $guard = null)
{
if (! Auth::getId()) {
return redirect('/');
}
$user = api::get('/users/'.Auth::getId());
if (! $user) {
abort(404);
}
return $next($request, $user);
}
이런식으로 글로저에 변수를 넘길수 없나요??
Route::group(['prefix' => 'users/{user_id}'], function () {
Route::get('/', 'UsersController@profile');
});
Route::group(['prefix' => 'me'], function () {
Route::get('/', 'UsersController@profile');
});
두가지 컨트롤러가 있지만, 메소드는 같습니다.
users/1004 사용자 프로필
me 내 프로필
이런식으로 구성하는 일단 me 그룹에서 로그인 사용자가 아니라면 리다이렉션 처리를 할 수 있을까요??