SpringBoot的WebSocket基于STOMP协议自动广播推送配置
2017-11-26 22:14
821 查看
在此记录一下!欢迎指教!
第一步、application启动入口配置
@EnableScheduling//先由后台计划推送,可以更改为调用方法推送
第二步、创建WebSocketConfig.java
引入sockjs.min.js
stomp.js
jquery-3.1.1.js
第一步、application启动入口配置
@EnableScheduling//先由后台计划推送,可以更改为调用方法推送
第二步、创建WebSocketConfig.java
@Configuration @EnableWebSocketMessageBroker public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer { public void registerStompEndpoints(StompEndpointRegistry stompEndpointRegistry) { //setAllowedOrigins允许指定的域名或IP(含端口号)建立长连接,如果只允许自家域名访问,这里轻松设置。如果不限时使用"*"号,如果指定了域名,则必须要以http或https开头。 //setClientLibraryUrl 前后端版本不一致的问题具体可以搜一下 stompEndpointRegistry.addEndpoint("/webSocketServer").setAllowedOrigins("*").withSockJS().setClientLibraryUrl("//cdn.jsdelivr.net/sockjs/1/sockjs.min.js"); } @Override public void configureMessageBroker(MessageBrokerRegistry registry) { registry.enableSimpleBroker("/topic"); } }第三步、创建WsController.java
@Controller public class WsController { @Autowired private EventService eventService; @Resource private SimpMessagingTemplate simpMessagingTemplate; // @Scheduled(fixedRate = 60000)//计划一秒推送一次 // @MessageMapping("/getWebsocketMessage")//配置消息访问请求路径,类似于RequestMapping public void autoSend(){ String str = "success!" System.out.println("websocket推送消息成功!"); this.simpMessagingTemplate.convertAndSend("/topic/ResponseMessage", str ); //主动推送消息代码 } }第四步、前台页面请求js
引入sockjs.min.js
stomp.js
jquery-3.1.1.js
//连接方法 function connect() { var socket = new SockJS('/webSocketServer');//地址需要配置ip和端口号,如果配置了nginx需要在nginx配置文件里面修改nginx配置文件 stompClient = Stomp.over(socket); stompClient.connect({}, function (frame) { setConnected(true); console.log('Connected:' + frame); stompClient.subscribe('/topic/ResponseMessage', function (response) {//此处配置订阅消息地址,不需要ip和端口号; console.dir("success") }) }); } function send() { stompClient.send("/getWebsocketMessage", {}, JSON.stringify({'name': name}));//此处地址配置为MessageMapping地址 }
相关文章推荐
- SpringBoot集成WebSocket【基于STOMP协议】进行点对点[一对一]和广播[一对多]实时推送
- SpringBoot集成WebSocket【基于纯H5】进行点对点[一对一]和广播[一对多]实时推送
- Spring Boot 构建应用——基于 WebSocket 的消息推送
- spring boot之spring mvc常用配置--服务器端推送技术基于jquery(10)
- springboot整合websocket实现一对一消息推送和广播消息推送
- 【springboot】基于springboot运行原理实现springboot的自动配置
- 基于spring websocket实现广播及点对点推送功能
- Spring-基于注解的配置[02自动装载bean]
- spring boot自动配置与启动流程分析
- springboot 自动配置 redis (RedisAutoConfiguration)实例
- Spring Boot 入门 - 进阶篇(7)- 自动配置(AutoConfigure)
- 初识Spring Boot框架(二)之DIY一个Spring Boot的自动配置
- 在Spring Boot框架下使用WebSocket实现消息推送
- 《Spring Boot 实战:从0到1》第3章 Spring Boot自动配置原理
- SpringBoot热部署配置(基于Maven)
- spring boot 使用@ConfigurationPropertiesu将配置自动封装成实体类
- java 基于springboot使用ssh(spring + springmvc + hibernate)分库配置多数据源方式
- 【Spring Boot】SpringBoot-自动配置源码解析
- Spring boot实战中自动配置原理分析
- SpringBoot自动配置原理