在spring引入GetMapping之前,我们只关心一个注释,所以这方面是有效的
@Before("within(aa.bb.*.rest..*) && execution(public * *(..)) && @within(org.springframework.web.bind.annotation.RestController) && @annotation(org.springframework.web.bind.annotation.RequestMapping)")
但是在我们可以使用GetMapping、PostMapping之后,这一点不起作用,但是这些注释有一个元注释RequestMapping。
有没有什么方法可以轻松拦截所有@Request estMap
/@{Get, Post, put, Patch,...}映射
?
我发现这里的语法对我很有用!
@Pointcut("execution(@(@org.springframework.web.bind.annotation.RequestMapping *) * *(..))")
public void requestMappingAnnotations() { }
我还可以把它们都列出来
@Pointcut("within(aa.bb.*.rest..*) && @within(org.springframework.web.bind.annotation.RestController)")
public void restControllers() {}
@Pointcut("@annotation(org.springframework.web.bind.annotation.RequestMapping) " +
"|| @annotation(org.springframework.web.bind.annotation.GetMapping)" +
"|| @annotation(org.springframework.web.bind.annotation.PostMapping)" +
"|| @annotation(org.springframework.web.bind.annotation.PatchMapping)" +
"|| @annotation(org.springframework.web.bind.annotation.PutMapping)" +
"|| @annotation(org.springframework.web.bind.annotation.DeleteMapping)"
)
public void mappingAnnotations() {}
@Pointcut("execution(@(@org.springframework.web.bind.annotation.RequestMapping *) * *(..))")
public void requestMappingAnnotations() { }
@Before("restControllers() && requestMappingAnnotations()")
public void onExecute(JoinPoint jp) {}
问题内容: 在春季介绍之前,我们只关心一个注释,因此,此方面有效 但是,在我们可以使用之后,这一点不起作用,但是这些注释具有meta注释。 有什么办法可以轻松拦截所有/ 吗? 问题答案: 我发现这句法这里对我的作品! 我也可以全部列出
问题内容: 我想知道是否有可能以编程方式发现特定API的所有端点。 因此,例如,如果我使用浏览器或curl获取此URL:https : //api.twitter.com/1.1/ 我可能会收到类似以下内容的JSON响应: 当然,Twitter可以选择发布还是不发布这种格式。因此,作为一个附带问题,是否有任何Java或Java库可以自动映射和发布您在控制器中创建的API路由? 问题答案: 由于没有
问题内容: 我想使用Spring Rest界面公开所有ID。 我知道默认情况下,这样的ID不会通过rest接口公开: 我知道我可以使用它来公开ID : 但是,有没有一种简便的方法可以在不手动维护此列表的情况下公开所有ID ? 问题答案: 当前,SDR无法提供此功能。SDR Jira跟踪器上的此问题说明了为什么无法(也许不应该)的原因。 从根本上说,由于ID已包含在响应的链接中,因此您无需将ID 公
我使用rest-assured来测试我的API,我有一个数组列表,其中包含需要与JSON响应进行比较的日期,但我无法从响应中获取所有日期值 我只获取第一个数组对象的记录 以下是我的 JSON 响应
我在wordpress网站中使用高级自定义字段。我创建了一个在帖子中使用的自定义字段。然后我为主页创建了一个自定义字段(关系字段),以便我可以从中选择帖子。当我为我的主页进行api调用时,我看到了带来帖子的acf,但我看不到帖子中使用的acf。如何公开所有字段以将其与api一起使用?应该是这样的 我看不到嵌套的acf(我不知道它实际上是否应该这样,但你明白了)。提前谢谢。
下面是我的Rest控制器代码: 问题是当我通过POSTMAN调用它时,如下所示: 我可以看到方法内部的有效文件,但所有注入的bean都是NULL Debug在错误的方法中 我的环境:Java17(zulu17.28.13-ca-jdk17.0.0-win_x64)Spring Boot: 2.6.7