微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SimpMessagingTemplate.convertAndSendToUser 不工作

如何解决SimpMessagingTemplate.convertAndSendToUser 不工作

我正在构建 Websocket 聊天应用程序,但我遇到了问题,如果您能给我一点帮助,我真的很感激它...

这是我点击 sendMessage btn 时的第一个 javascript 函数

function send() {

    var text = $("#write_msg").val();
    if (selectedUser == null) {
        alert('Please select a user.');
        return;
    }
    stompClient.send("/app/chat",{'sender': userName},JSON.stringify({ 'from': userName,'text': text,'recipient': selectedUser }));
    $("#write_msg").val("");
}

然后是服务器端

@MessageMapping("/chat")
    public void send(String sender,@Payload ChatMessage chatMessage) throws Exception {

        ChatMessage message = new ChatMessage(chatMessage.getFrom(),chatMessage.getText(),chatMessage.getRecipient());
        if (!sender.equals(chatMessage.getRecipient())) {
            webSocket.convertAndSendToUser(sender,"/queue/messages",message);
        }
        webSocket.convertAndSendToUser(chatMessage.getRecipient(),message);
    }

并且我检查了服务器端是否工作正常,我发现它工作得很好

但是问题是convertAndSendToUser好像不行,订阅端是这样的

stompClient.subscribe('/user/queue/messages',function (output) {
                    alert(output);
                    showMessage(createTextNode(JSON.parse(output.body)));
                });

目标映射似乎正确,但即使服务器端工作完成,警报也不会出现

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。