Spring boot+VUE+websocket 实现消息推送

本文介绍了如何使用Spring Boot后端结合Vue前端实现消息推送功能,通过WebSocket替代轮询机制,实现管理员创建消息时,登录用户能即时接收提醒。详细讲述了Spring Boot的配置、实现类及Vue的实现部分,并提供了测试效果和注意事项。
摘要由CSDN通过智能技术生成
  • 背景:

        最近涉及消息通知功能,在管理员创建发送消息时,登陆用户可以实时接收到新增消息的提醒,避免频繁刷新,通过websocket取代轮询setInterval。

  • Spring boot部分:
  • POM.xml
		<dependency>
		   <groupId>org.springframework.boot</groupId>
		   <artifactId>spring-boot-starter-websocket</artifactId>
		</dependency>
  • 新建配置类:
package io.xcc.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.server.standard.ServerEndpointExporter;

@Configuration
public class WebSocketConfig {
     /**
     * 注入ServerEndpointExporter,
     * 这个bean会自动注册使用了@ServerEndpoint注解声明的Websocket endpoint
     */
    @Bean
    public ServerEndpointExporter serverEndpointExporter() {
        return new ServerEndpointExporter();
    }
    
}
  • 新建实现类&
Spring BootVue可以通过Websocket实现后端的主动推送功能。 首先,在Spring Boot中,我们需要引入WebSocket的支持。可以在pom.xml文件中添加Spring BootWebSocket依赖。然后,创建一个WebSocket配置类,并添加注解@EnableWebSocket,用于启用WebSocket。 接下来,在配置类中,我们需要注册一个WebSocket处理器,并设置处理器的路径。可以使用@WebSocketMapping注解来指定处理器的路径,同时通过实现WebSocketHandler接口来处理WebSocket消息。 在处理器中,我们可以重写父类的方法,例如onOpen()、onMessage()、onClose()等,来处理WebSocket的事件,如连接建立、收到消息、连接关闭等。 然后,在Vue中,我们可以使用Vue.js的插件vue-native-websocket来连接WebSocket。首先,可以使用npm安装vue-native-websocket插件。然后,在main.js文件中,引入插件并进行相关配置。 在Vue组件中,可以使用this.$socket来访问WebSocket连接,并通过监听连接的事件,如open、message、close等,来处理WebSocket的事件。 在进行WebSocket连接后,后端可以在需要的时候,主动向前端发送消息。可以使用WebSocket的sendMessage()方法,将消息发送给所有连接的WebSocket客户端。 总结起来,Spring BootVue可以通过WebSocket实现后端的主动推送功能。在Spring Boot中,需要通过WebSocket配置类来注册WebSocket处理器,并在处理器中处理WebSocket的事件。在Vue中,可以使用vue-native-websocket插件来连接WebSocket,并通过监听事件来处理WebSocket的事件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值