Middlewares in Laravel
Step 1 :- created middlewares in cmd(command)
c:xampphtdocsl5 php artisan make:middleware LoggerMiddleware
step 2 :- define Routes folder and web.php
<?php
Route::get(‘/’,function(){
return “<h1>Hello World</h1>”;
})->middleware(‘logger’);
or
step 2 :-
<?php
Route::get(‘/’,[
‘uses’ =>
,function(){
return “<h1>Hello World</h1>”;
},
‘middleware’ => ‘logger’
)];
step 3 :created middleware
c:xampphtdocsl5 php artisan make:middleware LoggerMiddleware
<?php
namespace AppHttpMiddleware;
use Closure;
use Log;
class LoggerMiddleware
{
/**
* Handle an incoming request.
*
* @param IlluminateHttpRequest $request
* @param Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
Log::info(“Log Entry From LoggerMiddleware”);
return $next($request);
}
}
Step 4 :error store this folder Storagelogslaravel.org
step 5 :middleware store this folder Http:Kerner.php
<?php
namespace AppHttp;
use IlluminateFoundationHttpKernel as HttpKernel;
class Kernel extends HttpKernel
{
/**
* The application’s global HTTP middleware stack.
*
* These middleware are run during every request to your application.
*
* @var array
*/
protected $middleware = [
IlluminateFoundationHttpMiddlewareCheckForMaintenanceMode::class,
IlluminateFoundationHttpMiddlewareValidatePostSize::class,
AppHttpMiddlewareTrimStrings::class,
IlluminateFoundationHttpMiddlewareConvertEmptyStringsToNull::class,
AppHttpMiddlewareLoggerMiddleware::class,
];
/**
* The application’s route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
‘web’ => [
AppHttpMiddlewareEncryptCookies::class,
IlluminateCookieMiddlewareAddQueuedCookiesToResponse::class,
IlluminateSessionMiddlewareStartSession::class,
// IlluminateSessionMiddlewareAuthenticateSession::class,
IlluminateViewMiddlewareShareErrorsFromSession::class,
AppHttpMiddlewareVerifyCsrfToken::class,
IlluminateRoutingMiddlewareSubstituteBindings::class,
],
‘api’ => [
‘throttle:60,1’,
‘bindings’,
],
];
/**
* The application’s route middleware.
*
* These middleware may be assigned to groups or used individually.
*
* @var array
*/
protected $routeMiddleware = [
‘auth’ => IlluminateAuthMiddlewareAuthenticate::class,
‘auth.basic’ => IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class,
‘bindings’ => IlluminateRoutingMiddlewareSubstituteBindings::class,
‘can’ => IlluminateAuthMiddlewareAuthorize::class,
‘guest’ => AppHttpMiddlewareRedirectIfAuthenticated::class,
‘throttle’ => IlluminateRoutingMiddlewareThrottleRequests::class,
‘logger’ => AppHtppMiddlewareLoggerMiddleware::class,
];
}