Skip to content

Фильтры

Если вы хотите добавить фильтр запросов глобально(на все rest-конролеры)

yaml
filters:
  - key: PluginResourceFilter
    name: Override resources rest endpoints
    className: ru.slie.luna.plugins.quick_reload.rest.PluginResourceFilter

Ваш фильтр должен реализовать jakarta.servlet.Filter, лучше использовать OncePerRequestFilter:

java
@Component
@Order(10)
public class PluginResourceFilter extends OncePerRequestFilter {
    ResourceMapper resourceMapper;

    public PluginResourceFilter(ResourceMapper resourceMapper) {
        this.resourceMapper = resourceMapper;
    }

    @Override
    @NullMarked
    protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws IOException {
        String uri = request.getRequestURI();
        ...
    }
}