java-解决URI在Jersey中将匹配的资源方法
作者:互联网
在我们的Jersey应用程序中,我们希望根据角色来展示/限制API的不同部分.具体来说,我们只想提供指向该角色可以访问的资源的链接-即,在准备响应A时,如果无论如何都不允许用户使用X,我们甚至不会提供到资源X的链接.
为了能够区分这些链接,我们希望能够询问Jersey如何解决某个URI(即,解析到哪个资源以及该资源上的哪种方法).如果能够做到这一点,我们还可以检测到它是否以不允许访问的方式(@RolesAllowed)进行了注释,因此,我们可以跳过在响应中添加链接到响应的过程.显然,Jersey具有此知识/能力,因为它可以解决传入的请求.
问题是:有没有办法问Jersey URI在类和方法方面将解决什么问题?
编辑:是的…我们注意到有一个ResourceContext(可以注入),可以为我们提供匹配的资源类…但是我们仍然找不到URI解决的方法.
解决方法:
托比亚斯,
ResourceContext.matchUriInfo(URI).getDeclaringResource()和ResourceContext.matchUriInfo(URI).getMatchedMethod().getMethod()将满足您的要求.
标签:spring-security,jax-rs,jersey,uri,java 来源: https://codeday.me/bug/20191201/2081509.html