中间件理解和误区

中间件的误区1

Route::group(['prefix'=>'yaoxs','namespace'=>'Test','middleware' => ['employee']],function(){
    echo "此时进入这里不会去执行中间件employee,
    中间件的执行顺序应该是调用yaoxs/index路由的时候,
    执行中间件employee 再执行TestController控制器里面的index方法";
    Route::get('index', 'TestController@index');
});
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 3

group的意义大概就是能够同时给多个路由绑定同样的中间件吧,上面那个大概等同于

Route::get('index', ['middleware' => ['employee'],'uses'=>'TestController@index']);
Route::get('create', ['middleware' => ['employee'],'uses'=>'TestController@create']);

如果组内路由太多,配置起来太麻烦,所以放在group 上。

至于前置中间件还是后置,主要看中间件 $next($request) 的位置

后置举例:

$response = $next($request); // 先执行controller
check() // 后置操作
return $response  // 返回响应
3年前 评论
陈先生

洋葱结构,你的控制器就是洋葱心,中间件就是洋葱一层一层的

2年前 评论
xianyunyehe

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!