本文实例讲述了laravel框架中间件简单使用方法。分享给大家供大家参考,具体如下:

laravel内置了一个中间件来验证用户是否经过认证,如果用户没有经过认证,中间件会将用户重定向到登录页面,否则如果用户经过认证,中间件就会允许请求继续往前进入下一步操作。

当然,除了认证之外,中间件还可以被用来处理更多其它任务。比如:CORS 中间件可以用于为离开站点的响应添加合适的头(跨域);日志中间件可以记录所有进入站点的请求。

Laravel框架自带了一些中间件,包括认证、CSRF 保护中间件等等。所有的中间件都位于 app/Http/Middleware目录。

中间是请求前还是请求后执行取决于中间件本身,以下中间件会在请求处理前执行一些任务

namespace App\Http\Middleware;

use Closure;

class TestMiddle

{

public function handle($request, Closure $next)

{

// 执行动作

if(!$request->session()->has('huser')){

return redirect("login/index");

}

return $next($request);

}

}

而下面这个中间件则会在请求处理后执行其任务:

namespace App\Http\Middleware;

use Closure;

class TestMiddle

{

public function handle($request, Closure $next)

{

$response = $next($request);

// 执行动作

if(!$request->session()->has('huser')){

return redirect("login/index");

}

return $response;

}

}

中间件可以自己在编辑器里面新建对应类生成,也可用命令生成

php artisan make:middleware TestMiddle

此时,laravel的app\Http\Middleware\目录就会多一个TestMiddle.php的中间件文件

此时中间件还不能直接使用,必须把它注册到我们的laravel中,如下

只需在 app/Http/Kernel.php 类(3个属性,对应里面加入,我有时用路由的)

'TestMiddle' => \App\Http\Middleware\TestMiddle::class,

分配中间件到路由,下面介绍三种方式

Route::get('/',function(){

return redirect('home/index');

})->middleware('TestMiddle');

Route::group(['middleware' => ['TestMiddle']], function() {

Route::controller("db","DataBaseController");

});

Route::controller("home","HomeController",['middleware'=>'TestMiddle']);

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

php中间件怎么使用,laravel框架中间件简单使用方法示例相关推荐

  1. php中des加密cbc模式,php中加密解密DES类的简单使用方法示例

    本文实例讲述了php中加密解密DES类的简单使用方法.分享给大家供大家参考,具体如下: 在平时的开发工作中,我们经常会对关键字符进行加密,可能为了安全 也可能为了规范,所以要正确使用DES加密解密 代 ...

  2. html 12306页面实现,jQuery模拟12306城市选择框功能简单实现方法示例

    本文实例讲述了jQuery模拟12306城市选择框功能简单实现方法.分享给大家供大家参考,具体如下: www.jb51.net jQuery城市选择框 #parent{ width:500px; po ...

  3. php框架laravel百科,PHP 的Laravel 框架

    在windows下,搭建PHP的Laravel框架很简单. 先把PHP的安装目录 加入到环境变量里(在命令行能访问到php -v 就说明可以了) 然后 这些是需求的环境 PHP> = 7.1.3 ...

  4. Laravel框架中数据库分表时Model使用方法

    前言: 0.最近在使用laravel框架做MySQL分表的时候经过实践和踩坑,总结了以下3种可行的分表方法,亲测可用. 1.本人公司做的是SaaS系统,以店铺为维度.店铺id(shop_id) 命名规 ...

  5. PHP中间件 middleware,Laravel框架控制器的middleware中间件用法分析

    本文实例讲述了Laravel框架控制器的middleware中间件用法.分享给大家供大家参考,具体如下: 场景:活动开始前只能访问宣传页面,开始后才可以访问其他页面: 步骤: 新建中间件, 注册中间件 ...

  6. 面试题大全1-javaSE部分-JavaEE框架中间件

    文章目录 Java面试题大全 一.JavaSE 部分 基础部分 1.Java中基本数据类型有哪些? 2.Integer 和 int的区别 3.String和StringBuilder和StringBu ...

  7. django框架--中间件系统

    目录 零.参考 一.中间件的基本理解 二.中间件的系统定位 三.中间件的配置 四.中间件的执行流程 五.中间件与装饰器之间的思考 六.中间件的应用场景 七.内置中间件 八.总结 零.参考 https: ...

  8. 简述微服务框架中间件

    CSDN话题挑战赛第2期 参赛话题:Java微服务 大家可分享关于Java微服务相关知识,包括但不限于Java微服务开发经验.架构组成.技术交流.中间件等内容,我们鼓励springcloud架构为基础 ...

  9. laravel 控制器 中间件 传递数据_Laravel5 自定义路由中间件的使用步骤,太好用,珍藏了!...

    前言 Laravel5中我们处理request请求,中间会有很多环节.本文所说的中间件,位于路由和控制器之间,起到过滤和筛选请求的作用. 为什么不放到"表单验证"里呢? 因为有些请 ...

最新文章

  1. 破解人工智能系统的四种攻击方法!
  2. C#的加密解密算法,包括Silverlight的MD5算法
  3. Spring Framework(框架)整体架构
  4. python是人工智能最大骗局-Python与人工智能的关系原来是这样的...
  5. 4G内存服务器的MySQL配置优化
  6. filter过滤后重新添加_每天记一个单词(第3518)filter
  7. 朱晔和你聊Spring系列S1E3:Spring咖啡罐里的豆子
  8. Ubuntu14.04下安装Chrome出现“未安装软件包 libappindicator1”问题的解决办法
  9. ppa java 8_通过 ppa 在ubuntu server 上安装java 8
  10. GoldenGate碎碎念
  11. Atitti 编程语言高级 api 与高级知识 堆栈api 异常api Meta anno注解元数据api Ref 反射api Database meta api 字节码库如果你正在编写一个框架或者
  12. 【优化调度】基于matlab粒子群算法求解水火电调度优化问题【含Matlab源码 1181期】
  13. 软件项目管理案例教程(第3版)复习内容
  14. JAVA各种加密与解密方式(精挑版)
  15. 【转】在线翻译、词典、离线工具大全
  16. windows消息机制
  17. 【C++】DISALLOW_COPY_AND_ASSIGN
  18. 沈阳市计算机学校1996届,生命科学学院1996届应用生物班校友回母校举行毕业20周年联谊会...
  19. JNI-开发注意细节点
  20. 用格布拉斯准则剔除异常值,求不确定度

热门文章

  1. Spring构造函数注入和参数名称
  2. Linux 命令之 7z(7-zip) -- 压缩/解压文件
  3. MacBook Air的命令终端如何在root和普通用户之间切换
  4. html dom 修改,HTML DOM - 修改
  5. get占位符传多个参数_mybatis多个参数(不使用@param注解情况下),sql参数占位符正确写法...
  6. AppScan api登录接口 postman_如何通过Postman调用EDI系统的API?
  7. json 在后天怎么接_长相显老怎么办?以同岁的马伊琍和刘敏涛为例,解析显年轻的技巧...
  8. css清除浮动的几种方法_web前端学习路线分享CSS浮动-清除浮动篇
  9. 奇迹觉醒qq服务器比微信少,十年内最大的奇迹!功能比QQ还少的微信为什么能成功?...
  10. idea 自动生成mybaits_怎么让idea自动创建mybatis配置文件