Blade中将拦截器和中间件的概念抽离了出来,这个思想来自于 Express
。中间件(middleware)是在每次路由逻辑处理之前进行自定义的一些操作,比如 Auth
认证,CSRF
令牌管理,一些过滤操作等。
Blade.me().use(use((signature) -> {
System.out.println(signature.request().uri());
return invoker.next();
});
这段代码非常简单,在每次请求处理之前输出一下请求的 URI
,然后放过,继续处理。
一起看看 use
方法中的参数是什么:
Blade use(WebHook... middleware)
这个方法接收多个 WebHook
,也就是接收多个中间件的处理,内部使用 List
存储保证顺序执行。