当前位置: 首页 > 知识库问答 >
问题:

如何在antMatchers中使用“contains”?

寿毅庵
2023-03-14

我在ZUUL应用程序中使用spring security,我的API控制对我的微服务的所有访问。使用过滤器可以允许每个登录名指定路由,在过滤器中,我有一个通过“.antMatchers”方法进行控制的对象HttpSecurity。

例如:

    protected void configure(HttpSecurity http) throws Exception {
        http.cors().and().csrf().disable();
        http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
        http.authorizeRequests()
                .antMatchers("/**/swagger-ui.html").permitAll()
                .antMatchers("/**/webjars/**").permitAll()
                .antMatchers("/**/swagger-resources/**").permitAll()
                .antMatchers("/**/csrf/**").permitAll()
                .antMatchers("/**/v2/**").permitAll()
                .antMatchers("/**/signin/**").permitAll()
                .antMatchers("/**/microservice/chatws/**").permitAll()
                .antMatchers("/**/microservice/*swagger*").permitAll()

                .antMatchers("/**/microservice/swagger-resources/**").permitAll()
                .antMatchers("/**/microservice/v2/**").permitAll()
                .antMatchers("/**/microservice/webjars/**").permitAll()
                .antMatchers("/**/microservice/csrf/**").permitAll()
                .anyRequest()
                .authenticated();

        http.apply(new JwtTokenFilterConfigurer(jwtTokenProvider));
    }

我想允许所有在任何语言环境、乞讨、中间或末端具有“昂首阔步”的路线。我在想String类的方法包含,如果包含“昂首阔步”,则允许全部。

共有1个答案

阎卓
2023-03-14

是总是可以通过实现Request estMatcher来实现您自己的匹配逻辑。以下示例显示了匹配包含单词“swagger”的请求URI(不带查询参数):

http.authorizeRequests()
       .requestMatchers(req-> req.getRequestURI().contains("swagger")).permitAll()
 类似资料:
  • 我试图理解requestMatchers、antMatchers和authorizeRequests的用途。 > 如果我们只使用请求匹配器会发生什么? http.request匹配器(); 如果使用requestMatchers和antMatchers会发生什么? http。requestMatchers()。antMatchers(“/”,“/登录”); 如果使用请求匹配器、antMatcher

  • 我想在我的浏览器上打开招摇的用户界面。这是我的密码 但它不起作用。我仍然需要输入httpBasic()提供的基本身份验证 所以我添加了其他人找到的以下代码 现在,我可以访问localhost:8080/swagger-ui.html,但是仍然会弹出httpBasic窗口。我可以点击cancel关闭窗口,继续使用swagger ui。但是我不知道是什么导致了这个问题

  • 问题内容: 我想使用Android Studio使用Gradle构建工具开发应用程序。我无法在上插入存储库和库。我的文件如下: 如何在项目中添加OpenCV? 问题答案: 您可以在Android Studio中轻松完成此操作。 请按照以下步骤将Open CV作为库添加到您的项目中。 libraries在项目主目录下创建一个文件夹。例如,如果您的项目是OpenCVExamples,则将创建一个Ope

  • 我想使用Android Studio开发一个应用程序使用Gradle构建工具。我无法在上插入OpenCV repo和库。我的文件如下所示: 我如何在我的项目中添加OpenCV?

  • 问题内容: 我想对英语句子加标签,并进行一些处理。我想使用openNLP。我已经安装了 当我执行命令时 它提供输出POSTagging Text.txt中的输入 我希望它安装正确吗? 现在如何从Java应用程序内部进行此POStagging?我已将openNLPtools,jwnl,maxent jar添加到项目中,但是如何调用POStagging? 问题答案: 这是我放在一起的一些(旧)示例代码

  • 问题内容: 我必须在GWT入口点使用java.util.Calendar,但是在运行应用程序时出现错误,这是因为GWT无法找到源代码,无论如何我都可以解决此问题。 提前致谢!!! 问题答案: java.util.Calendar不是模拟的类。您可以在此处找到仿真类的列表: http://code.google.com/webtoolkit/doc/latest/RefJreEmulation.ht