剑客爱编程

导航

html5 EvnetSource 与 JSP页面结合使用

   最近一直在研究前端的技术,特别是html5的技术,本人觉得html5的发展将越来越好,废话少说。看到了EventSource,根据官方的说法是服务器向客户端的推送服务。自己想找一些例子看看,发现都是PHP或者ASP的,很少有关JSP的,就想用JSP去做一下。

   首先说一下EventSource,这个只要看一下网络请求就知道是轮询了。。。。通过操作本人十分鼓励用chrom浏览器去查看html5的效果,毕竟很多浏览器还没有完全支持,特别是IE,基本是反对者的角色。好了,直接代码了

    jsp的代码是:

<%@page import="java.util.Date"%>
<%@ page contentType="text/event-stream; charset=UTF-8"%>
<%
    response.setHeader("Content-Type", "text/event-stream");  //官方说法,一定要设置Content-Typetext/event-stream
    response.setHeader("Cache-Control", "no-cache");//官方说法,一定要设置Cache-Controlno-cache
    response.getWriter().write("data: >>server Time" + new Date());  //官方说法,必须以data:开头
    response.flushBuffer();%>

    html的script代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
    if (typeof (EventSource) !== "undefined") {
        var eventsource = new EventSource("../jsp/eventSourceTest.jsp");
        eventsource.onmessage=function(e){
            console.log(e.data);
            document.getElementById("result").innerHTML = e.data;
        };
    } else {
        alert("can't support eventsource");
    }
</script>
</head>
<body>
    <div id="result"></div>
</body>
</html>

       初学者,如有错误,欢迎指正,感激感激

 

posted on 2015-06-02 23:33  剑客爱编程  阅读(707)  评论(0编辑  收藏  举报