限制Camel CometD端点的协议

时间:2017-10-09 07:29:51

标签: apache-camel cometd

是否可以限制Camel CometD端点或端点上允许的协议?

例如,我想限制端点,以便它只能通过websockets接收呼叫,而不允许HTTP。

1 个答案:

答案 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服务器的方法之一,那么你的问题就解决了。