Spring boot 项目。现有接口
-
获取商品资源 GET api/goods/{goodsId}
-
修改商品资源 PUT api/goods/{goodsId}
二者路径相同,GET 方法任何人都可以访问,无需登录,但是 PUT 需要登录验证 token
问题来了,项目中有个 token 拦截器 Interceptor,验证并从 token 里拿到用户 id,但是白名单 excludePathPatterns 却是按路径匹配的,只要符合此路径,无论什么方法( GET, PUT )都会放行,导致 PUT 接口出现问题,拿不到用户 id。
如何解决?