【问题标题】:Resolve what resource+method a URI would match in Jersey解决 URI 在 Jersey 中匹配的资源+方法
【发布时间】:2012-04-02 12:59:59
【问题描述】:

在我们的 Jersey 应用程序中,我们喜欢根据角色呈现/限制 API 的不同部分。具体来说,我们只想提供指向该角色可以访问的资源的链接——即在准备响应 A 时,如果用户无论如何都不允许使用 X,我们甚至不会提供指向资源 X 的链接。

为了能够区分这些链接,我们希望能够询问 Jersey 如何解析某个 URI - 即解析到什么资源以及该资源上的什么方法。如果我们能做到这一点,我们还能够检测它是否以不允许访问的方式 (@RolesAllowed) 进行注释......因此我们将能够跳过将链接添加到正在制作的响应中。显然 Jersey 具有这种知识/能力,因为它可以解决传入的请求。

问题是:有没有办法问 Jersey URI 在类和方法方面会解析成什么?

编辑:是的......我们注意到有一个 ResourceContext(可以注入)可以为我们提供匹配的资源类......但我们仍然找不到 URI 将解析到的方法。

【问题讨论】:

    标签: java spring-security uri jersey jax-rs


    【解决方案1】:
    【解决方案2】:

    有趣。我不认为这是公开的默认服务,但假设您在 web.xml 中设置球衣,您的配置存储在 WebServletConfig 和 ServletContainer 中。我会看看这两个类的源代码,看看有什么可用的。至少,您应该能够在堆栈中对某些进行初始化并存储您自己需要的信息的东西进行子类化。在加载类并进行注释处理时获取映射而不是为每个请求查找它会更实用。

    【讨论】:

      猜你喜欢
      • 2013-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多