如何将JSON数据发送到事件推送?

时间:2013-09-02 16:45:53

标签: events grails groovy websocket push

我正在使用grails的事件推送插件。

当我按下这样的简单数据时,一切正常:

def mydata = [:]
mydata.message = "hello world"
event (topic: 'mySaved', data: mydata)

我可以在我的页面上显示这个:

grailsEvents.on('mySaved', function (data) {
  console.log(data);
  console.log(data.message)
}

但是,我想将一个完整的实例发送到这个主题,那就是当它中断时。

所以,例如:

def mydata = colorInstance as JSON
println mydata
event (topic: 'mySaved', data: mydata)

以上println打印出来:

{"id":10,"color":"Red","description":"hot color"}

如果我尝试在我的页面上使用它:

grailsEvents.on('mySaved', function (data) {
  console.log(data);
  console.log("This is ID: " + data.id)
}

我没有得到理想的结果。以上内容在控制台日志中打印以下内容:

Object {class: "grails.converters.JSON", depth: 0, writer: Object}
This is ID: undefined

问题

如何发送colorInstance以便我可以在控制台中获取它?

1 个答案:

答案 0 :(得分:0)

尝试按

event( topic: 'mySaved', data: mydata.toString() )