### Interceptor :拦截器 可以配置多组拦截器对访问进行拦截,访问在真正到达控制器前会按顺序经过 Interceptor,可以做一些权限,用户身份识别等代码 配置 ~~~ 'interceptors'=>[ \cloud\CloudInterceptor::class, \cloud\mag\MagInterceptor::class, \cloud\security\SecurityInterceptor::class ], 'interceptors_except'=>['/log'] //需要排除的路径前缀 ~~~ 拦截器需要实现Interceptor接口 如 ~~~ class SecurityInterceptor implements Interceptor{ /** * @var CloudApi */ private $api; public function _initialize(CloudApi $api) { $this -> api = $api; } public function handler(Request $request, Response $response) { //注意: 如果拦截器 返回 true 说明拦截自己处理了请求,请求不会继续向下经过其他拦截器,更不会到达控制器,会直接返回 //默认空返回就可以 return false; } } ~~~