Java 如何向多个用户发送消息和ping用户stomp
如何在spring项目中使用stomp ping活动用户? 我已经搜索了2天了,但是这个代码不起作用 客户端脚本:Java 如何向多个用户发送消息和ping用户stomp,java,spring,websocket,message-queue,stomp,Java,Spring,Websocket,Message Queue,Stomp,如何在spring项目中使用stomp ping活动用户? 我已经搜索了2天了,但是这个代码不起作用 客户端脚本: var socket = new SockJS('/connect'); stompClient = Stomp.over(socket); stompClient.subscribe('/topic/active', function(activeMembers) { console.log(activeMembers); showActiv
var socket = new SockJS('/connect');
stompClient = Stomp.over(socket);
stompClient.subscribe('/topic/active', function(activeMembers) {
console.log(activeMembers);
showActive(activeMembers);
});
以下是spring配置:
<websocket:message-broker application-destination-prefix="/chat">
<websocket:stomp-endpoint path="/connect, /activeUsers">
<websocket:handshake-interceptors>
<bean class="uz.mirworldstyle.sensation.component.MessagingHandshakeInterceptor"/>
</websocket:handshake-interceptors>
<websocket:sockjs/>
</websocket:stomp-endpoint>
<websocket:simple-broker prefix="/topic, /queue"/>
</websocket:message-broker>
下面是一个java类:
@Service
public class ActiveUserPinger {
@Autowired
private MessagingController messagingController;
@Autowired
MessageSendingOperations<String> stringMessageSendingOperations;
@Autowired
private ActiveUserService activeUserService;
@Autowired
private SimpMessagingTemplate template;
@Scheduled(fixedDelay = 2000)
public void pingUsers() {
Set<Integer> activeUsers = activeUserService.getActiveUsers();
template.convertAndSend("/topic/active", activeUsers);
stringMessageSendingOperations.convertAndSend("/topic/active", activeUsers);
}
}
@服务
公共类ActiveUserPinger{
@自动连线
专用MessagingController MessagingController;
@自动连线
MessageSendingOperations字符串MessageSendingOperations;
@自动连线
私有ActiveUserService ActiveUserService;
@自动连线
私有SimpMessagingTemplate;
@计划(固定延迟=2000)
公共用户(){
设置activeUsers=activeUserService.getActiveUsers();
template.convertAndSend(“/topic/active”,activeUsers);
stringMessageSendingOperations.convertAndSend(“/topic/active”,activeUsers);
}
}