【问题标题】:Spring Java config for custom websocket handshake on stomp endpoint用于 stomp 端点上的自定义 websocket 握手的 Spring Java 配置
【发布时间】:2014-09-03 10:19:49
【问题描述】:

我想要这个 XML 配置的等效项(采用 Here),但使用 Java 配置:

<bean id="customHandler" class="app.wsock.CustomHandler"/>

<websocket:message-broker application-destination-prefix="/app">
  <websocket:stomp-endpoint path="/foo">
    <websocket:handshake-handler ref="customHandler"/>
  </websocket:stomp-endpoint>
  <websocket:simpl-broker prefix="/topic,/queue" />
</websocket:message-broker>

我的目标是构建一个类,根据某些标准限制到我的 STOMP 端点(即:到他的 websocket)的连接。

我不想使用 XML 来配置我的端点,如何将 sn-p 转换为 Java Config?

【问题讨论】:

    标签: java spring stomp spring-java-config spring-websocket


    【解决方案1】:

    类似这样的:

    @Configuration
    @EnableWebSocketMessageBroker
    public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
    
        @Bean
        public HandshakeHandler handshakeHandler() {
            return new app.wsock.CustomHandler();
        }
    
        @Override
        public void registerStompEndpoints(StompEndpointRegistry registry) {
            registry.addEndpoint("/foo").setHandshakeHandler(handshakeHandler());
        }
    
        @Override
        public void configureMessageBroker(MessageBrokerRegistry configurer) {
            configurer.enableStompBrokerRelay("/topic", "/queue");
        }
    
    }
    

    【讨论】:

    • 我试图覆盖各种方法,如 isValidOrigin()、handleInvalidConnectHeader()、determineUser(),但没有一个被调用。我想这个类甚至没有被实例化。 (如果这可能有帮助,我正在使用 Spring Boot)
    • ???这是一个不同的问题,它与构建自定义 HandshakeHandler 的错误方式有关
    • 对不起,我不明白你的意思,正如问题“我的目标是建立一个限制连接到我的 STOMP 端点(即:到他的 websocket)的类”基于一些标准。”,但是以这种方式构建的握手并没有用于握手,所以它没有用,它只是一个与 websocket 不相关的 bean
    • 不,您的问题是关于Java config equivalent。如果您对某些自定义代码有疑问,您应该开始一个新问题。请更具体一些,不要在一个主题中分享多个问题。
    • 我的意思是 Java 配置 not 等同于我在问题中报告的 XML:使用 XML 配置,handshakeHandler 被正确调用,而在 java 配置中你提供它根本没有使用,所以不适合它必须做的工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    • 2021-12-06
    • 2013-08-08
    • 2014-08-23
    • 1970-01-01
    相关资源
    最近更新 更多