文档地址:
中间件 |《Laravel 8 中文文档 8.5》| Laravel China 社区
介绍
中间件提供了一种方便的机制来过滤进入应用程序的 HTTP 请求。例如,Laravel 包含一个验证用户身份的中间件。如果用户未能通过认证,中间件会把用户重定向到登录页面。反之,用户如果通过验证,中间件将把请求进一步转发到应用程序中。
当然,除了验证身份外,还可以编写其他的中间件来执行各种任务。例如:CORS 中间件可以负责为所有的应用返回的 responses 添加合适的响应头。日志中间件可以记录所有传入应用的请求。
Laravel 自带了一些中间件,包括身份验证、CSRF 保护等。所有的这些中间件都位于 app/Http/Middleware 目录。
具体实操来了哦
<?php
/**
* @Description 后台权限验证中间件
* @Date 2021-12-19 14:29
*/
namespace Modules\Admin\Http\Middleware;
use Closure;
class AdminApiAuth
{
public function handle($request, Closure $next)
{
// 在此之前可以处理一些逻辑
return $next($request);
}
}
app ->http->
Kernel.php 新增这句话
'AdminApiAuth' => \Modules\Admin\Http\Middleware\AdminApiAuth::class,
api.php
Route::group(['prefix' => 'admin', 'middleware' => 'AdminApiAuth'], function () {
Route::get('/user/{id}', function ($id) {
return $id;
});
});
我们可以做点事情在请求之前。
当然意义不大。但是如果我们用来做拦截或者别的请求。这个中间件意义就打了。这个是aop的一个思想。