Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Grails中的HTML5_Javascript_Html_Grails_Server Push - Fatal编程技术网

Javascript Grails中的HTML5

Javascript Grails中的HTML5,javascript,html,grails,server-push,Javascript,Html,Grails,Server Push,我试图在grails应用程序中使用HTML5 SSE。下面是正在运行的示例代码: def push(){ println "Inside action..." response.setContentType("text/event-stream"); response.setCharacterEncoding("UTF-8"); render("data: ${System.currentTimeMillis()}"); } 客户端代码: <script

我试图在grails应用程序中使用HTML5 SSE。下面是正在运行的示例代码:

def push(){
    println "Inside action..."
    response.setContentType("text/event-stream");
    response.setCharacterEncoding("UTF-8");
    render("data: ${System.currentTimeMillis()}");
}
客户端代码:

<script type="text/javascript">
    if(typeof(EventSource) !== "undefined") {
        var source = new EventSource("push");
        source.onmessage = function(event) {
            console.debug("event triggered...");
            document.getElementById("result").innerHTML += event.data + "<br>";
        };
        source.onerror = function(event) {
            console.log(event.message);
        }
    } else {
        document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events...";
    }
</script>
但是不起作用


请建议。

好吧,我解决了。我用过:

    PrintWriter writer = response.getWriter();

    writer.write("data:"+System.currentTimeMillis()+"\n\n")

它成功了。

Hello Vivek,您是如何在控制器/操作完成后刷新数据并避免连接关闭的?
    PrintWriter writer = response.getWriter();

    writer.write("data:"+System.currentTimeMillis()+"\n\n")