Home  >  Article  >  PHP Framework  >  How to implement middleware jump in Laravel 5.4

How to implement middleware jump in Laravel 5.4

PHPz
PHPzOriginal
2023-04-23 09:16:21653browse

Before Laravel 5.4, we could use middleware to implement the jump function. However, Laravel 5.4 middleware is implemented differently. In this article, we will discuss how to implement middleware jumps in Laravel 5.4.

1. Implement middleware jump in Laravel 5.4

In Laravel 5.4, we can use the redirect() function and with() function to implement middleware jump. Let's look at an example:

  1. Create a log middleware

In the app/Http/Middleware directory, create a LogMiddleware.php file with the following content:

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Log;

class LogMiddleware
{
    public function handle($request, Closure $next)
    {
        Log::info(&#39;LogMiddleware&#39;);
        return $next($request);
    }
}

The above code creates a middleware named LogMiddleware and records a log in the handle function.

  1. Create an authorization middleware

In the app/Http/Middleware directory, create an AuthMiddleware.php file with the following content:

<?php

namespace App\Http\Middleware;

use Closure;

class AuthMiddleware
{
    public function handle($request, Closure $next)
    {
        if (!auth()->check()) {
            return redirect('/login')->with('error', '请先登录!');
        }

        return $next($request);
    }
}

Above The code creates a middleware named AuthMiddleware, which determines whether the user is logged in in the handle function. If not, jumps to the login page and saves the error information to the session.

  1. Register the middleware into the route

In the routes/web.php file, register the route and middleware, the code is as follows:

Route::get('/dashboard', function () {
    return view('dashboard');
})->middleware([LogMiddleware::class, AuthMiddleware::class]);

The above code creates a route named dashboard. In the dashboard route, LogMiddleware and AuthMiddleware middleware are used.

  1. Implementing middleware jump

When you directly access the http://yourdomain/dashboard page, it will automatically jump to http://yourdomain/login, and There is error information saved in the session.

2. Summary

In Laravel 5.4, we can use the redirect() function and the with() function to implement middleware jumps. Through the above steps, we successfully implemented a middleware jump function. Hope this article can be helpful to you!

The above is the detailed content of How to implement middleware jump in Laravel 5.4. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn