# 中间件开发规范
中间件主要用于拦截或过滤应用的`HTTP`请求,并进行必要的业务处理。
中间件目录
├─app 应用目录
│ ├─adminapi 应用目录
│ │ ├─middleware 中间价目录
│ │ │ ├─AdminCheckRole.php 检测权限中间件
│ │ │ ├─AdminCheckToken.php 检测token中间件
│ │ │ ├─AdminLog.php 操作日志中间件
定义中间件
```
<pre class="calibre15">```
namespace app\adminapi\middleware;
use app\Request;
/**
* admin用户权限验证
* Class AdminCheckToken
* @package app\adminapi\middleware
*/
class AdminCheckRole
{
public function handle(Request $request, \Closure $next)
{
return $next($request);
}
}
```
```
中间件调用
```
<pre class="calibre13">```
use think\facade\Route;
/**
* 应用模块 相关路由
*/
Route::group('goods', function () {
})->middleware([
\app\adminapi\middleware\AdminCheckToken::class,
\app\adminapi\middleware\AdminCheckRole::class,
\app\adminapi\middleware\AdminLog::class,
]);
```
```