4.7 Routes 级别拦截器

Routes级别拦截器是指在Routes中添加的拦截器,如下是示例:

  1. /**
  2. * 后端路由
  3. */
  4. public class AdminRoutes extends Routes {
  5.  
  6. public void config() {
  7. // 此处配置 Routes 级别的拦截器,可配置多个
  8. addInterceptor(new AdminAuthInterceptor());
  9.  
  10. add("/admin", IndexAdminController.class, "/index");
  11. add("/admin/project", ProjectAdminController.class, "/project");
  12. add("/admin/share", ShareAdminController.class, "/share");
  13. }
  14. }

在上例中,AdminAuthInterceptor 将拦截IndexAdminController、ProjectAdminController、ShareAdminController 中所有的 action 方法。

Routes 拦截器在功能上通过一行代码,同时为多个 Controller 配置好相同的拦截器,减少了代码冗余。Routes 级别拦截器将在 Class 级别拦截器之前被调用。