【问题标题】:Passing variable from Authenticator to endpoint JAX-RS and RESTlet将变量从 Authenticator 传递到端点 JAX-RS 和 RESTlet
【发布时间】:2015-09-22 03:36:03
【问题描述】:

我有一个自定义身份验证器(即,一个扩展 Authenticator 并在 authenticate(Response res, Request req) 中进行一些自定义身份验证的类),然后我想将一个值传递给处理实际 API 调用的函数。我认为添加像 @Context Request request 这样的参数可以工作,但我不这么认为。

有人知道我如何将对象从 Authenticator 传递到资源吗?

谢谢, 丹尼尔

【问题讨论】:

    标签: java google-app-engine authentication jax-rs restlet


    【解决方案1】:

    jax-rs 有一个机制。您可以创建实现 SecurityContext 的自定义上下文。此安全上下文将您的用户对象作为 Principal 返回。 您的身份验证器可能用作过滤器,然后可以设置您的请求的安全上下文。从那里您可以通过 SecurityContext 访问您的用户对象。

    虽然不完美,但我有一个 working piece of code on github 可以帮助您入门。

    【讨论】:

    • 你能不能偶然用路由器和端点扩展它,看看它们是如何结合在一起的?
    • 只需浏览源代码,您应该会找到所需的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-18
    • 1970-01-01
    相关资源
    最近更新 更多