- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在使用 RequestionContextHolder
时遇到问题。我有一个 keycloak token 存储在上下文持有者的属性中。我在该行获取属性:
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
我多次需要这个 keycloak token 。
首先,登录后,我获得了 requestAttributes,然后获得了 token (一切都很好)。
然后我稍后在使用应用程序时需要它(点击几次后),RequestContextHolder.getRequestAttributes()
返回 null (那么不太好)。
我不明白为什么第一次一切正常,然后就返回 null。
我尝试将其放入 web.xml 中,但它没有改变任何内容:
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
有人可以帮忙吗?
最佳答案
应用程序中的每次点击都是一个单独的请求,因此它们都有一个单独的RequestContext。似乎 token 仅针对此登录请求放入请求上下文中。可能是通过 keycloak 集成。
您可能需要一些东西来在以下请求中识别您的用户。这将是一个 session ,有不同的类型可用。然后您的客户端需要在每个请求中发送 sessionid 或 token 。
有关更多详细信息,您需要向我们提供更多背景信息。你是如何集成keycloak的?您想用 token 做什么?
关于java - RequestContextHolder.getRequestAttributes() 第二次调用返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50857458/
我在使用 RequestionContextHolder 时遇到问题。我有一个 keycloak token 存储在上下文持有者的属性中。我在该行获取属性: RequestAttributes req
我们使用@Async 进行多线程处理。直到每个多线程方法我都可以看到 RequestContextHolder.getRequestAttributes() 的值。 但是当我在方法内部进行调试时,我得
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
我是一名优秀的程序员,十分优秀!