Java 弹簧踩踏在网箱上——”;“私人”;消息传递
我正在进行WebSocket聊天。我制作了一个简单的程序,它可以向每个人发送每一条信息。但我正在尝试做一些类似于私人信息的事情,我真的不知道怎么做。我尝试过不同的选择,但我不知道如何让它起作用 这是我的密码: WebSocketConfig.java GreetingController.java 和my js函数连接并发送消息:Java 弹簧踩踏在网箱上——”;“私人”;消息传递,java,spring,websocket,Java,Spring,Websocket,我正在进行WebSocket聊天。我制作了一个简单的程序,它可以向每个人发送每一条信息。但我正在尝试做一些类似于私人信息的事情,我真的不知道怎么做。我尝试过不同的选择,但我不知道如何让它起作用 这是我的密码: WebSocketConfig.java GreetingController.java 和my js函数连接并发送消息: function connect() { var socket = new SockJS('/gs-guide-websocket'); stompClient =
function connect() {
var socket = new SockJS('/gs-guide-websocket');
stompClient = Stomp.over(socket);
var theUserId = 1;
stompClient.connect({user:theUserId}, function (frame) {
setConnected(true);
console.log('Connected: ' + frame);
//stompClient.subscribe('/topic/greetings', function (greeting) {
stompClient.subscribe('/topic/greetings', function (greeting) {
showGreeting(JSON.parse(greeting.body).content);
});
});
}
function sendName() {
stompClient.send("/app/hello", {}, JSON.stringify(
{
'from_user_id': parseInt($("#from_user_id").val()),
'message': $("#message").val(),
'to_user_id': parseInt($("#to_user_id").val())
}));
}
如何让私人信息发挥作用?有人能给我解释一下它应该如何工作吗
干杯,安德鲁 我们可以使用SimpMessageTemplate将消息发送到适当的目标队列 文件::
相应地定义对客户端主题的订阅谢谢!工作就像一个符咒:)
@Controller
public class GreetingController {
@MessageMapping("/hello")
@SendTo("/topic/greetings")
public Greeting greeting(Message message) throws Exception {
return new Greeting(message.getFrom_user_id(), message.getMessage(), message.getTo_user_id());
}
}
function connect() {
var socket = new SockJS('/gs-guide-websocket');
stompClient = Stomp.over(socket);
var theUserId = 1;
stompClient.connect({user:theUserId}, function (frame) {
setConnected(true);
console.log('Connected: ' + frame);
//stompClient.subscribe('/topic/greetings', function (greeting) {
stompClient.subscribe('/topic/greetings', function (greeting) {
showGreeting(JSON.parse(greeting.body).content);
});
});
}
function sendName() {
stompClient.send("/app/hello", {}, JSON.stringify(
{
'from_user_id': parseInt($("#from_user_id").val()),
'message': $("#message").val(),
'to_user_id': parseInt($("#to_user_id").val())
}));
}
@Autowired
private SimpMessagingTemplate template;
@MessageMapping("/hello")
public void greeting(Message message) throws Exception {
this.template.convertAndSend("/topic/"+message.getFrom_user_id(),message);
}