Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏

40.4. URL 路径相关

过滤路径

		
        PathPattern pattern = new PathPatternParser().parse("/test/**");
        PathContainer pathContainer = exchange.getRequest().getPath().pathWithinApplication();
        if (pattern.matches(pathContainer)) {
            log.info("custom webFilter");
            return chain.filter(exchange);
        }
		
		

		
        PathPatternParser pathPatternParser = new PathPatternParser();

        List<String> paths = List.of("/token", "/verifier", "/mock/*");
        List<PathPattern> parsedPatterns = new ArrayList<>();

        for (String path : paths) {
            PathPattern pathPattern = pathPatternParser.parse(path);
            parsedPatterns.add(pathPattern);
        }

        PathContainer pathContainer = exchange.getRequest().getPath().pathWithinApplication();
        for (PathPattern pattern : parsedPatterns) {
            if (pattern.matches(pathContainer)) {
                System.out.println("Path " + pathContainer + " matches pattern " + pattern.getPatternString());
            }
        }

        return chain.filter(exchange);