从 RealmBase 对象访问会话 ID



是否可以从RealmBase.athenticate方法访问会话ID?我需要从我的自定义领域类中获取它,以便将与会话关联的其他信息存储到数据库中,并在以下请求期间检索它。我正在使用Tomcat 8。谢谢!

No.

身份验证不需要使用会话,因此不会将其烘焙到 API 中。身份验证也应该与会话管理分开,因此它也没有嵌入到 API 中。

您可能仍然可以这样做,但这需要一些技巧。

  1. 编写一个使用包含请求对象的ThreadLocal的 Valve。
  2. 在阀链中的AuthenticationValve之前注册阀门。
  3. 在该 Valve 中,将用户的请求塞入ThreadLocal,然后向下调用链。
  4. 在自定义Realm中,从ThreadLocal获取对象。
  5. 永远记住在调用链返回后从ThreadLocal中删除请求......即使引发异常。

相关内容

  • 没有找到相关文章

最新更新