【发布时间】:2018-10-31 01:28:55
【问题描述】:
我已经用 ActiveMQ 配置了 Spring STOMP,它工作正常。 但是,有没有机会做客户端的订阅路由?
@Override
public void configureMessageBroker(MessageBrokerRegistry registry) {
registry.enableStompBrokerRelay("/topic");
registry.setApplicationDestinationPrefixes("/app");
}
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/ws")
.withSockJS();
}
我想要实现的是两个通知队列(在前端) - 一个用于管理员用户,一个用于普通用户。用户不发送任何消息,只接收来自服务器的消息。假设任何用户都可以发送以下订阅请求:
// app is application destination prefix
client.subscribe('/app/notificator', ...);
服务器应该将此请求路由到 ActiveMQ:
/topic/notificator/admin - if logged user is of role admin, or
/topic/notificator/user - if logged user is of role user
如何配置Spring来制定这样的路由策略?
【问题讨论】:
标签: java spring activemq stomp spring-websocket