- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个网络套接字@ServerEndpoint
,它有一个我的过滤器监听的注释。但我的过滤器从未被调用(我的过滤器在普通 JAX-RS 资源上调用)
如何让我的过滤器被 Web 套接字端点调用?
@ServerEndpoint("/push/register")
public class WebSocketListener
{
@OnOpen
@MyFilter
public void open(Session session)
{
...
}
}
过滤器:
@MyFilter
@Provider
@Priority( Priorities.AUTHENTICATION )
public class AuthenticationFilter implements ContainerRequestFilter
{
@Context
private HttpServletRequest request;
@Override
public void filter(ContainerRequestContext requestContext) throws IOException
{
...
}
}
最佳答案
JAX-RS 过滤器与 websocket 端点无关,名称绑定(bind)也不应该起作用。
<小时/>您可以实现Filter
使用 @ServerEndpoint
中定义的相同 URI 从 Servlet API 调用注解,然后您就可以拦截握手请求。
但是过滤器不会拦截 WebSocket 帧。
@WebFilter("/push/register")
public class AuthenticationFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
...
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void destroy() {
}
}
关于java - 如何让我的 ContainerRequestFilter 在 @ServerEndpoint onOpen 上调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44503208/
我正在尝试使用 ContainerRequestFilter 对基于 Tomcat 的 Jersey 应用程序强制执行某些身份验证。我关注了this document 。问题:过滤器永远不会被触发 过
我正在尝试使用 ContainerRequestFilter 对基于 Tomcat 的 Jersey 应用程序强制执行某些身份验证。我关注了this document 。问题:过滤器永远不会被触发 过
我想对每个请求进行全局检查。因此,我使用 ContainerRequestFilter (没有 @PreMatching )并抛出 WebApplicationException如果检查未通过,则响应
我正在尝试几个小时来使主题中解释的机制起作用:Best practice for REST token-based authentication with JAX-RS and Jersey 但在调试
我有一个 ContainerRequestFilter 实现,例如HeaderRequestFilter,我想让它为每个请求实例化。我正在使用 Spring 和 Jersey 。我尝试将 @Scope
我刚刚开始学习如何编写 REST Web 服务代码,并且已经坚持了好几天了。我正在使用 Jersey 2 编写一个具有基于 header 的过滤功能的示例应用程序,并部署在 Tomee-plus 1.
我们计划为我们的 REST API 使用 Jersey 的引用实现。作为原型(prototype)工作,我也在使用 ContainerRequestFilters 并实现了其中的多个。有没有一种方法可
我正在尝试通过创建一个小的 RESTful 服务来学习 Jersey 。我想出于特定原因使用过滤器(就像我想使用 ContainerResponseFilter for CORS header 以允许
我正在使用 dropwizard 和 Jersey ,我通过以下方法定义了 ContainerRequestFilter 的自定义提供程序 import javax.ws.rs.ext.Provide
为了验证 api key ,我使用 ContainerRequestFilter 来读取 JSON 负载并解析 api key 。我有以下方法。 public ContainerRequest fil
我正在尝试在 Tomcat 8 中使用 RESTeasy 3.0.17FINAL 实现身份验证过滤器。这里有我的 web.xml 条目。 org.jboss.restea
我知道过滤器是用来处理请求的,并且可以用 http header 和 httpmethods 做一些事情,但是我很困惑 clientrequestfilter 和 containerrequestfi
我有一个 Jersey REST API 并且正在使用 ContainerRequestFilter 来处理授权。我还在所有端点上使用 @ManagedAsync,这样我的 API 就可以为数千个并发
我如何/应该如何将对象从 ContainerRequestFilter 传递到 (JAX-RS) Resteasy 版本 3.0.11 中的(匹配后)资源,该版本嵌入了 undertow 并使用了 G
我有点难以理解其余拦截器注释如何添加不同的值,这些值稍后会在过滤器中可见。鉴于下面的代码,我希望一旦进入过滤器,权限值就会包含 foo 和 bar,但它们是空的。任何帮助将不胜感激。 注释 packa
我正在使用 JAX-RS/Jersey 开发 WebService。 我设置了一个ContainerRequestFilter,其目的是验证用户。我只需要通过身份验证保护一些路径,其余的就可以提供给所
我有一个受 Shibboleth(SSO 实现)保护的 Jersey API。 Shibboleth 将登录用户的 ID 放入请求属性中。在后端,我使用 Shiro 进行授权。 Shiro 希望了解登
我正在尝试获取 ContainerRequestFilter 对象中的方法注释。 Controller : @GET @RolesAllowed("ADMIN") public String mess
我有这门课,想记录休息请求: public class RequestFilter implements ContainerRequestFilter { private static fin
我有下面的代码,它工作正常。我的问题是代码下面的天气是否是线程安全的。通过阅读 Servlet Filter 和 Container*Filter 概念,我感到困惑。 如何使这个过滤器成为线程安全的?
我是一名优秀的程序员,十分优秀!