1
如上所述,在HTML5Rocks WebSockets tutorial,Java WebSocket API:限制对某些域的服务
服务器决定是否向所有客户或只有那些驻留在一组明确定义域的服务。
好吧,怎么用Java API for WebSocket 1.0 (JSR 356)(运行在Tomcat)?
如上所述,在HTML5Rocks WebSockets tutorial,Java WebSocket API:限制对某些域的服务
服务器决定是否向所有客户或只有那些驻留在一组明确定义域的服务。
好吧,怎么用Java API for WebSocket 1.0 (JSR 356)(运行在Tomcat)?
见ServerEndpointConfig.Configurator#checkOrigin
一旦注册成功,checkOrigin方法将“原点” HTTP标头值作为参数调用,然后你可以返回true,如果它的确定,还是假的,这将导致HTTP 403 - 原产地不验证。 (请忽略任何对javadoc项目Tyrus的引用,API(javax.websocket。*)对于所有实现都是相同的)。
好的谢谢 - 这应该工作。然而,有些东西让我困扰:'ServerEndpoint.configurator()'被记录为“如果没有提供配置器类,则实现使用它自己的”。所以例如Tomcat使用'org.apache.tomcat.websocket.server.DefaultServerEndpointConfigurator'。如果我不想失去Configurator其他方法的默认逻辑,那么我将不得不继承Tomcat的DefaultServerEndpointConfigurator的子类 - 但之后我无法再将它部署到其他容器中了......但好吧,看起来好像成为现在唯一的可能性。再次感谢。 –
多数民众赞成那不是真的 - 只要打电话超级,它会工作;默认配置器将由API类本身找到,所以你仍然可以保持容器独立。 –
我的意思是..它的一个类,你不需要重写你不想修改的方法。默认实现查找容器默认实现,您不需要做任何事情。 –