0
点赞
收藏
分享

微信扫一扫

Ant风格Url仅匹配纯数字

皮皮球场 2023-11-09 阅读 52

有一个需求,在拦截器中将一个List中的URL(Ant风格)与接口的请求路径逐个匹配,有任意匹配则放行。 贴个伪代码

import org.springframework.util.AntPathMatcher;
import org.springframework.util.PathMatcher;

private final PathMatcher pathMatcher = new AntPathMatcher();
if (pathMatcher.match(listUrl, requestURI)) {
	return true;
}

用于匹配的规则有几个/user/{id}/user/update/user/delete/{id},根据Restful风格设计的几个接口,依次为:查看用户、修改用户、删除用户。 原本以为到此就完工了,实际跑的时候发现用/user/{id}去匹配/user/update也是可以通过的,这样它匹配的范围就有点大了。 不过我们的用户ID是全数字,所以修改了一下,改成/user/{id:[\d]+}让其仅匹配数字即可,如果ID是字符串的不知道有什么比较好的方案,或许把URL设计成/user/get/{id}?有其他方案欢迎交流

举报

相关推荐

0 条评论