1

我想在 Spring Boot 中有休息控制器来处理所有这样的请求:“/{arg}”,除了“/sitemap.xml”。我怎样才能做到这一点?

4

1 回答 1

4

您可以通过正则表达式在控制器级别指定您的请求映射并排除一些资源(例如“excludeResourceA”和“excludeResourceB”):

@RestController
@RequestMapping(value = "/{arg:(?!sitemap.xml|excludeResourceA|excludeResourceB).*$}")
public class YourRestController {
    // your implementation
}

当然,您还可以使用相对于控制器路径匹配的相同正则表达式在方法级别指定请求映射,并且@PathVariable("arg") String arg如果需要,您可以将方法签名中的参数 with 传递给方法主体。

于 2017-01-18T17:49:23.213 回答