练习:使用springmvc实现H5(server-sent event)

4 篇文章 0 订阅

1. 注意设置报头为 "text/event-stream"

2. \n\n必须要

3. 键必须为data

java代码:

@Controller  
@RequestMapping("/send")  
public class H5SendServer {  
    @RequestMapping(value = "/serverSend.do")  
    public void serverSend(HttpServletResponse response)  
    {  
        response.setContentType("text/event-stream");   
        response.setCharacterEncoding("UTF-8");  
        try {  
            PrintWriter writer = response.getWriter();  
            writer.write("data: 中文测试 \n\n");//这里需要\n\n,必须要,不然前台接收不到值,键必须为data
            writer.flush();  
              
            Thread.sleep(3000);  
        } catch (Exception e) {  
            e.printStackTrace();  
        }   
    }  
}


js代码:

if(typeof(EventSource)!=="undefined"){
	var source=new EventSource(path+"/send/serverSend.do");
	source.onmessage = function(event){
		console.log("event.data=" + event.data);//必须用data接收
		$("#test").innerHTML += event.data + "<br />";
	};
	source.onerror = function(event){
		console.log("error");
	};
	source.onopen = function(event){
		console.log("open");
	};
}else{
	console.log("此浏览器不支持server-send");
}
实现效果:



  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值