【发布时间】:2016-03-23 17:02:07
【问题描述】:
我需要访问 HttpServletRequest 属性来获取 javax.servlet.request.X509Certificate,其中包含用于 TLS 请求的 X509Certificate 证书数组。
从 JAX-RS ContainerRequestFilter 我可以轻松地从 ContainerRequestContext.getProperty(String property) 方法中提取它,但我找不到从 WebSocket Session 或 HandshakeRequest 获取它的方法,我可以从中获取访问 HttpSession 实例,但不能访问 HttpServletRequest 实例。
注意:这不是 Accessing HttpSession from HttpServletRequest in a Web Socket @ServerEndpoint 的副本,因为我需要访问 HttpServletRequest(或等效于提取 TLS 证书),而不是 HttpSession。
由于 WebSocket 是 HTTP 的超集,我想它应该是可能的,并希望 Java 团队已经想到了一种访问 servlet 属性的方法,但我真的找不到。有人知道这是否可能吗?
【问题讨论】:
标签: java servlets jakarta-ee websocket java-websocket