반응형
미들웨어
1 미들웨어를 만든다
PS C:\xampp\htdocs\laravelShopping\laravel8> php artisan make:middleware CheckUser
Middleware created successfully.
2. Http > Middleware하단에 CheckUser.php라는 파일이 생성되었다.
3. Kernel.php
하단에 아래와 같이,'checkUser' => \App\Http\Middleware\CheckUser::class,한 줄 추가시킨다.
protected $routeMiddleware = [
'checkUser' => \App\Http\Middleware\CheckUser::class,
'auth' => \App\Http\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
];
이렇게하면 checkUser라는 미들웨어를 라우팅에 넣어서 사용이 가능하다.
Route::get('/login', [LoginController::class, 'index'])->name('login.index')->middleware(('checkUser'));
이렇게 하면, /login페이지에는 미들웨어 checkUser가 적용이된다.
세션
PS C:\xampp\htdocs\laravelShopping\laravel8> php artisan make:controller SessionController
Controller created successfully.
SessionController.php
class SessionController extends Controller
{
//
public function getSessionData(Request $request){
if($request->session()->has('name')){
echo $request->session()->get('name');
} else {
echo "No Data in the session";
}
}
public function storeSessionData(Request $request){
$request->session()->put('name', 'Jennifer');
echo "Data has been added to the session";
}
public function deleteSessionData(Request $request){
$request->session()->forget('name');
echo "Data has been removed from the session";
}
}
web.php
Route::get('/session/get', [SessionController::class, 'getSessionData'])->name('session.get');
Route::get('/session/set', [SessionController::class, 'storeSessionData'])->name('session.store');
Route::get('/session/remove', [SessionController::class, 'deleteSessionData'])->name('session.delete');
반응형
'Project > Laravel' 카테고리의 다른 글
라라벨설치 (0) | 2024.04.26 |
---|---|
6.DB연결, 테이블생성 및 데이타 불러오기 (0) | 2022.07.19 |
4. Http requests and Html Form 작성 (0) | 2022.07.19 |
3.HTTP CLIENT를 사용해서 CRUD 만들기 (0) | 2022.07.19 |
2.라라벨 컴포넌트 (0) | 2022.07.18 |