我想了解tomcat中websocket升级请求的处理?它是通过过滤器还是servlet完成的?如何通过TOmcat-8处理ws升级请求。
谢谢,
Anuj
答案 0 :(得分:1)
Tomcat使用过滤器来查找启动WebSocket连接的HTTP升级请求,并在遇到相应的处理程序时将其传递给它。
使用ServletContainerInitializer配置过滤器。过滤器的位置取决于Web应用程序配置的其他过滤器以及Web应用程序将它们放置在FilterChain中的位置。例如,Web应用程序可能希望在Web Socket过滤器和Tomcat允许之前放置安全过滤器。
答案 1 :(得分:0)
WebSockets是一种完全不同的协议。它们不是由过滤器或servlet处理,而是由EndPoints处理。要创建它们,您可以使用扩展端点类,但是,就像Java EE中的其他所有内容一样,您现在可以使用注释。有关详细信息,请查看最新文档Java API for WebSockets
要在客户端创建它们,请求在HTTP中启动,可能在JavaScript中,但在Tomcat上,端点正在侦听,而不是正常的servlet。