第 57 章 确定 Interceptor 何时被调用

摘要

拦截器分为几个阶段。拦截器运行的阶段决定了它可以访问的消息数据的内容。拦截器可以决定其在同一阶段与其他拦截器的关系的位置。拦截器的阶段及其在阶段的位置设置为拦截器的构造器逻辑的一部分。

57.1. 指定 Interceptor 位置

在开发自定义拦截器时,需要考虑的第一个操作是消息处理链中拦截器所属的位置。开发人员可以通过以下两种方式之一控制消息处理链中的拦截器位置:

  • 指定拦截器的阶段
  • 指定阶段内拦截器的位置限制

通常,指定拦截器的位置的代码放置在拦截器的构造器中。这样,运行时可以实例化拦截器,并在拦截器链中放入正确的位置,而无需在应用程序级别代码中进行任何显式操作。