Spring Websocket 插件 return 值
Spring Websocket Plugin return value
我正在使用 Spring Websocket Plugin,我想向客户端发送一些日志输出。
这是我的代码:
@MessageMapping("/run")
@SendTo("/topic/run")
protected String run(@Payload WebForm form) {
doSomeWithForm(form)
return "started"
}
普惠制:
$(function () {
var socket = new SockJS("${createLink(uri: '/stomp')}");
var client = Stomp.over(socket);
client.connect({}, function () {
client.subscribe("/topic/run", function (message) {
$("#log").append(message.body);
});
});
$("#submitBtn").click(function() {
client.send("/app/run", {}, JSON.stringify({
'type':$("#type").val(),
'id':$("#id").val()
}));
});
});
到目前为止效果很好,但 message.body 看起来像这样 ""This my return text""
。
为什么有两个"?如何提取这个?
尝试JSON.parse(message.body)
。
注意:随着 grails-2.5/grails-3.0 发布 spring-4.1+,该行为将发生变化。从 spring 版本开始,纯字符串有效负载将不再被 json 编码,这意味着您的 js 代码中的 message.body
将具有不带双引号的字符串值
我正在使用 Spring Websocket Plugin,我想向客户端发送一些日志输出。
这是我的代码:
@MessageMapping("/run")
@SendTo("/topic/run")
protected String run(@Payload WebForm form) {
doSomeWithForm(form)
return "started"
}
普惠制:
$(function () {
var socket = new SockJS("${createLink(uri: '/stomp')}");
var client = Stomp.over(socket);
client.connect({}, function () {
client.subscribe("/topic/run", function (message) {
$("#log").append(message.body);
});
});
$("#submitBtn").click(function() {
client.send("/app/run", {}, JSON.stringify({
'type':$("#type").val(),
'id':$("#id").val()
}));
});
});
到目前为止效果很好,但 message.body 看起来像这样 ""This my return text""
。
为什么有两个"?如何提取这个?
尝试JSON.parse(message.body)
。
注意:随着 grails-2.5/grails-3.0 发布 spring-4.1+,该行为将发生变化。从 spring 版本开始,纯字符串有效负载将不再被 json 编码,这意味着您的 js 代码中的 message.body
将具有不带双引号的字符串值