18 Şubat 2021 Perşembe

SpringStomp WebSocketMessageBrokerConfigurer Arayüzü

Giriş 
Şu satırı dahil ederiz. In-Memory Broker başlatır. Yani bu sınıf STOMP istemcisinin bağlanacağı adresi ve kuyruk isimlerini belirtir.
import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer
registerStompEndpoints metodu
Örnek
Şöyle yaparız. SockJS istemcisi "/websocket" adresine bağlanacaktır. Publish edilen mesajları dinlemek için "/topic" adresini dinlemek gerekir
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {

  @Override
  public void registerStompEndpoints(StompEndpointRegistry registry) {
    registry.addEndpoint("/websocket").withSockJS();
  }

  @Override
  public void configureMessageBroker(MessageBrokerRegistry registry) {
    registry.enableSimpleBroker("/topic");
    registry.setApplicationDestinationPrefixes("/app");
  }
}
Örnek - In-Memory Broker
Şöyle yaparız. SockJS istemcisi "/consume" adresine bağlanacaktır.  Publish edilen mesajları dinlemek için "/topic.socket.kafka", "/topic.socket.rabbit", "/topic.socket.active" adreslerini dinlemek gerekir
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
  @Override
  public void registerStompEndpoints(StompEndpointRegistry registry) {
    registry.addEndpoint("/consume").withSockJS();
  }
  @Override
  public void configureMessageBroker(MessageBrokerRegistry registry) {
    registry.enableSimpleBroker("/topic.socket.kafka", "/topic.socket.rabbit",
"/topic.socket.active");
  }
}
Burada STOMP abonelerinin mesaj gönderme yeteneği yok. Sadece Kafka ve RabbitMQ'dan gelen mesajları dinliyorlar. Mesaj gönderme için şöyle yaparız

Hiç yorum yok:

Yorum Gönder