我知道我们可以将不同的 url 映射到不同的拦截器,或者我们也可以将多个 url 映射到单个拦截器。我只是想知道我们是否也有排除选项。例如,如果我在应用程序中有 50 个 url 映射,除了 1 个映射,我想为所有映射调用拦截器,而不是为 49 个映射编写配置,我可以只提到 * 和一个排除到第 50 个 url 吗?
原文由 Ron Zoosk 发布,翻译遵循 CC BY-SA 4.0 许可协议
我知道我们可以将不同的 url 映射到不同的拦截器,或者我们也可以将多个 url 映射到单个拦截器。我只是想知道我们是否也有排除选项。例如,如果我在应用程序中有 50 个 url 映射,除了 1 个映射,我想为所有映射调用拦截器,而不是为 49 个映射编写配置,我可以只提到 * 和一个排除到第 50 个 url 吗?
原文由 Ron Zoosk 发布,翻译遵循 CC BY-SA 4.0 许可协议
就我而言:
/api/v1/user-manager-service/tenants/add
PathPattern 配置不正确:
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new RequestInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/tenants/**");
}
我失踪了:
/**
在实际路径之前。
更正后它按预期工作:
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new RequestInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/**/tenants/**");
}
原文由 Dmitry 发布,翻译遵循 CC BY-SA 4.0 许可协议
8 回答6.5k 阅读
1 回答2k 阅读✓ 已解决
1 回答1.9k 阅读✓ 已解决
2 回答1.3k 阅读
2k 阅读
2 回答916 阅读
1 回答995 阅读
HandlerInterceptor
s 可以应用于或排除(多个)特定的 url 或 url 模式。请参阅 MVC 拦截器配置。
以下是文档中的示例
或者使用 XML 配置