是否可以限制Camel CometD端点或端点上允许的协议?
例如,我想限制端点,以便它只能通过websockets接收呼叫,而不允许HTTP。
答案 0 :(得分:1)
从CometD的角度来看,您可以通过在服务器配置中指定允许的协议列表来轻松完成此操作:
<web-app ...>
<servlet>
<servlet-name>cometd</servlet-name>
<servlet-class>org.cometd.server.CometDServlet</servlet-class>
<init-param>
<param-name>allowedTransports</param-name>
<param-value>websocket</param-value>
</init-param>
</servlet>
...
</web-app>
嵌入式代码案例如下:
BayeuxServerImpl bayeuxServer = new BayeuxServerImpl();
bayeuxServer.setAllowedTransports("websocket");
bayeuxServer.start();
如果Camel公开了这两种配置CometD服务器的方法之一,那么你的问题就解决了。