【发布时间】:2016-11-20 08:58:44
【问题描述】:
我一直在尝试从 grails 服务发送消息并将其显示在我的网页 (receiver.gsp) 中。
我的服务代码如下:
public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body)
throws IOException {
String message = new String(body, "UTF-8");
groovyPageRenderer.render view: '/receiver/receiver', model: [msg: message]
println(" [x] Received '" + message + "'");
}
我的receiver.gsp 页面:
<div class="body">
<h1>Receiver</h1>
${msg}
我只想显示从我的服务异步呈现的消息。
我的服务每次渲染msg时,都会在receiver.gsp页面中捕获该值,但是并没有显示出来。
任何提示或帮助将不胜感激。提前致谢。
【问题讨论】:
-
页面离开服务器并进入浏览器后,您无法在浏览器中运行任何服务器端编程语言,只能运行 javascript。如果你想从服务器异步获取数据并更新 dom 使用 ajax
-
那么推送通知是如何工作的呢?有没有其他方式从服务器推送数据?
-
从这个意义上说,Push 类似于 Web 套接字。我建议您查看什么是 Web 套接字并了解它们。 Grails 有几个插件,一旦您了解它们的工作原理,它们就会对您有所帮助。