以下是实现JAVA后台向HTML页面推送消息的简单实现。
后台代码(将方法放在Controller中):
public String getPushMessage(){
String message="msg";
getResponse().setContentType("text/event-stream;charset=UTF-8");
getResponse().setCharacterEncoding("UTF-8");
try {
PrintWriter writer=getResponse().getWriter();
writer.write("data: "+message+"\n\n");//一定要用\n\n结尾哦
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
前台代码:
$(function(){
if(window.Notification){
if(window.Notification.permission != "granted"){
window.Notification.requestPermission();
}
}
else{
alert('你的浏览器不支持此消息提示功能,请使用chrome内核的浏览器!');
}
var eventSource=new EventSource("getPushMessage");
eventSource.onmessage=function(event){
var message=event.data;
alert(message);
//以下代码的功能是使消息能够在windows桌面弹出(HTML页面最小化了也没关系)
var notification = new Notification("title", {
body: message,
icon: 'img/title.jpg',
requireInteraction:true//表示需要和用户交互,即:用户点击关闭弹窗才会消失
});
}
});
分享到:
相关推荐
这样,即使在页面加载后,浏览器也能接收到服务器推送的新数据。 在压缩包中的文件“ServerSent”,可能包含了实现SSE功能的核心代码,比如Controller的实现,Repository的接口,以及可能的实体类定义。这些文件...
在IT行业中,服务端消息推送(Server-Sent Events,简称SSE)是一种高效且实时的通信技术,允许服务器主动向客户端发送数据,而无需客户端频繁发起请求。这种单向推送机制在实时应用如股票更新、在线聊天、实时通知...
使用SSE,服务器可以向客户端推送实时数据,而无需客户端发出请求。 SSE建立在HTTP协议上,使用基于文本的数据格式(通常是JSON)进行通信。客户端通过创建一个EventSource对象来与服务器建立连接,然后可以监听...
服务器推送事件(Server-sent Events)是基于WebSocket 协议的一种服务器向客户端发送事件&数据的单向通讯。目前所有主流浏览器均支持服务器发送事件,当然除了 Internet Explorer 。2333… WebSocket 协议是继HTTP...
以下是对标题和描述中涉及的.NET实现Server Push(服务器推送)源码的详细解释: 首先,`ServerPush.sln`是一个Visual Studio解决方案文件,它包含了项目的所有配置和依赖关系。当你打开这个文件时,Visual Studio...
这种技术通常被称为“服务器推送”(Server-Sent Events, SSE)或“Comet”技术。本项目利用了Comet4J这一第三方库来实现这一功能,下面将详细讲解其原理和实现方式。 Comet4J是一个基于Java的服务器推送框架,它...
在C# .NET环境中实现服务器推送,有多种方法,如WebSocket、SignalR、Server-Sent Events (SSE)等。下面将详细介绍这些技术: 1. WebSocket: WebSocket提供全双工通信,允许服务器和客户端双向传输数据。在C#中,...
一旦在客户端和Web Flow服务器之间建立了安全连接,除非有必要,否则它将使用来自Kafka主题的消息并异步推送数据,而无需关闭与客户端的连接。 使用Reactive Kafka看一下Spring WebFlux上的这个。
Server-Sent Events是HTML5引入的一个强大特性,它简化了实时数据推送的实现,减少了不必要的网络通信,提高了实时应用的效率。对于需要实时更新的Web应用,Server-Sent Events是一个理想的选择。
- 完成上述步骤后,部署 Web 工程并启动服务器,然后在客户端(可能是浏览器或 Applet)加载 Pushlet 客户端代码,即可开始接收服务器推送的消息。 通过 Pushlet,开发者可以构建高效、实时的交互式应用,减少了...
服务器推送技术主要分为以下几种实现方式: 1. **Comet技术**:Comet是一种利用HTTP长连接来实现实时通信的技术。通过让服务器保持HTTP连接打开状态,直到有新数据可推送给客户端时才关闭连接。这种方式可以是HTTP...
在提供的压缩包文件中,"ServerPush"可能是一个实现了服务器推送功能的ASP.NET项目,"项目说明.txt"可能包含了项目的详细说明和使用指南,而"Fsrm.ServerPushChat"可能是一个示例应用,展示了如何使用服务器推送技术...
服务端推技术,也称为Server-side Push,是一种网络通信模式,允许服务器主动向客户端推送数据,而无需客户端发起请求。这种技术在实时性要求较高的应用中尤为重要,如在线聊天、实时股票更新、游戏同步等。在传统的...
2. **客户端库**:提供JavaScript API,用于建立WebSocket连接,接收服务器推送的消息,并在前端进行处理。 3. **消息协议**:定义服务器与客户端之间的数据交换格式,可能包括消息类型、内容编码等。 4. **安全与...
- 客户端代码:用于初始化连接,接收和处理服务器推送的消息。 - 服务器端代码:处理客户端连接,存储和分发消息。 - API接口:用于创建、更新和删除消息。 - 测试用例:验证系统的功能和性能。 学习和理解这个实例...
服务器发送事件(Server-Sent Events,简称SSE)是一种允许服务器向客户端实时推送数据的技术,主要应用于单向数据流场景,比如实时股票更新、在线聊天、动态新闻等。与WebSocket不同,SSE使用HTTP长连接,由服务器...
在实现ASP.NET SignalR的服务器推送功能时,你需要以下步骤: 1. **安装SignalR**:使用NuGet包管理器在项目中添加SignalR的依赖包。 2. **配置SignalR**:在全局.asax.cs文件的Application_Start方法中,注册...
本教程将深入探讨如何构建一个公告实例,并实现服务器消息推送功能,帮助开发者更好地理解这一核心功能的实现。 首先,我们需要明确公告实例的基本组成部分。一个完整的公告系统通常包括以下几个部分: 1. **公告...
通常,这样的示例可能包括设置WebSocket连接、处理连接状态变化、接收和解析服务器推送的消息、以及在后台运行时保持连接的策略等内容。开发者可能需要关注电池消耗、网络条件变化、应用在后台运行时的限制等因素。 ...