搜索
首页后端开发php教程laravel中间件的使用
laravel中间件的使用Jul 05, 2018 pm 03:13 PM
laravel中间件

这篇文章主要介绍了关于laravel中间件的使用,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

laravel中间件的使用:

创建中间件命令
php artisan make:middleware CheckLogin
执行完以上命令会在app/Http/Middleware目录下创建一个新的中间件类CheckLogin.php。
创建完以后还需要注册中间件在app/Http/Kernel.php中:
 protected $routeMiddleware = [
        'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
        'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
        'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
        'can' => \Illuminate\Auth\Middleware\Authorize::class,
        'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
        'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
        //这就是新注册的中间件
        'checklogin' => \App\Http\Middleware\CheckLogin::class,    ];
可以在刚创建的中间件里写验证如下:
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Session;
class CheckLogin{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $userid = Session::get(&#39;_userid&#39;);        
        $login_sts = Session::get(&#39;_login_sts&#39;);        
        if (empty($userid) || empty($login_sts)){            
        return response()->view(&#39;admin/login&#39;);
        }        
        return $next($request);
    }
}
接着就是怎么使用中间件功能了
Route::group([&#39;namespace&#39;=>&#39;Admin&#39;,&#39;middleware&#39;=>&#39;checklogin&#39;],function (){    
Route::get(&#39;admins&#39;,&#39;IndexController@index&#39;);    
Route::get(&#39;logout&#39;,&#39;IndexController@logout&#39;);});

这里直接使用的是路由群组,只要把路由放在群组之中都会经过这个验证,[‘namespace’=>’Admin’]是命名空间,[‘middleware’=>’checklogin’]这就是中间件验证,之前注册时注册名为checklogin,所以middleware后直接写checklogin就可以了。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

Laravel 修改默认日志文件名称和位置

用laravel dingo api插件库创建api的方法

以上是laravel中间件的使用的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
如何在Laravel中使用中间件处理异常如何在Laravel中使用中间件处理异常Nov 04, 2023 pm 02:26 PM

如何在Laravel中使用中间件处理异常中间件是Laravel框架中的一个重要概念,它可以在请求到达控制器之前和之后进行一系列的操作。除了常见的权限验证、日志记录等功能,中间件还可以被用来处理异常。在本文中,我们将探讨在Laravel中如何使用中间件处理异常,并提供具体的代码示例。首先,我们需要创建一个异常处理中间件。可以通过运行以下命令来生成一个中间件类:

如何在Laravel中使用中间件进行数据导出如何在Laravel中使用中间件进行数据导出Nov 02, 2023 am 08:29 AM

Laravel是一个流行的PHPWeb应用程序框架,它提供了许多方便的功能来开发高性能、可扩展和易于维护的Web应用程序。其中一个重要的特性是中间件(Middleware),它可以在请求和响应之间执行某些操作。在本文中,我们将讨论如何使用中间件将数据导出为Excel文件。创建Laravel应用程序首先,我们需要创建一个Laravel应用程序。你可以使用co

laravel中间件用来做什么laravel中间件用来做什么Apr 09, 2024 pm 05:03 PM

Laravel 中间件被用于:1. 认证和授权;2. 处理 HTTP 请求和响应;3. 过滤响应;4. 记录和监控;5. 自定义应用程序行为。通过中间件,开发人员可以在路由控制器之外轻松地为应用程序添加功能和限制。

Laravel中间件:为应用程序添加数据库迁移和版本管理Laravel中间件:为应用程序添加数据库迁移和版本管理Aug 02, 2023 am 10:17 AM

Laravel中间件:为应用程序添加数据库迁移和版本管理在开发和维护一个Web应用程序时,数据库迁移和版本管理是一个非常重要的任务。它们使我们能够轻松地管理数据库的结构和数据,而无需手动更新或重建数据库。Laravel框架提供了强大而便捷的数据库迁移和版本管理功能,通过使用中间件,我们可以更方便地集成这些功能到我们的应用程序中。首先,我们需要确保我们的Lar

如何在Laravel中使用中间件进行微信登录授权如何在Laravel中使用中间件进行微信登录授权Nov 03, 2023 am 10:55 AM

如何在Laravel中使用中间件进行微信登录授权随着移动互联网的快速发展,第三方登录成为了用户快捷注册和登录的一种流行方式。其中,微信登录是最受欢迎的之一。对于开发者来说,如何在自己的网站或应用中使用微信登录进行授权是一个常见的需求。本文将介绍如何在Laravel框架中使用中间件来实现微信登录授权功能,并提供具体的代码示例。首先,我们需要下载并安装Larav

laravel中间件是什么意思laravel中间件是什么意思Apr 09, 2024 pm 05:15 PM

Laravel 中间件是 HTTP 请求和响应处理中的拦截器组件,用于通过自定义逻辑扩展应用程序功能。中间件会验证请求、修改数据、执行应用程序操作、重定向请求、处理错误和异常。Laravel 提供内置中间件,如 Auth 和 Throttle,也可创建自定义中间件。可通过全局中间件或路由中间件使用中间件,从而增强应用程序的安全性、功能性和可维护性。

如何在Laravel中使用中间件实现跨域资源共享(CORS)如何在Laravel中使用中间件实现跨域资源共享(CORS)Nov 02, 2023 pm 01:57 PM

如何在Laravel中使用中间件实现跨域资源共享(CORS)概述:跨域资源共享(CORS)是一种浏览器机制,用于让Web应用程序可以在不同的域名下共享资源。Laravel作为一种流行的PHP框架,提供了方便的方式来处理CORS,通过使用中间件来处理跨域请求。本文将向您介绍如何在Laravel中使用中间件来实现CORS,包括如何配置中间件、设置允许的域名和请求

Laravel中间件:控制应用程序访问权限和角色管理Laravel中间件:控制应用程序访问权限和角色管理Jul 28, 2023 pm 01:12 PM

Laravel中间件:控制应用程序访问权限和角色管理引言:在开发Web应用程序时,经常需要对用户的访问权限进行控制,以保证应用程序的安全性。而Laravel中的中间件提供了一种简洁、灵活的方式来管理应用程序的权限和角色,本文将介绍如何使用Laravel中间件来控制应用程序的访问权限和角色管理。一、什么是中间件在深入了解Laravel中间件如何管理权限和角色之

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),