springboot websocket带参数

java 后台:

@OnOpen
    public void onOpen(Session session, @PathParam("id") long id, @PathParam("name") String name) throws Exception {
        this.session = session;
        System.out.println(this.session.getId());
        webSocketSet.add(this);
        LOGGER.info("Open a websocket. id={}, name={}", id, name);
    }

 

Js前端:

// 通过路径传递参数的方法(服务端采用第一种方法"@ServerEndpoint"实现)
        websocket = new WebSocket("ws://127.0.0.1:18080/testWebsocket/23/Lebron");

 

 

 

 

 

参考:

https://www.cnblogs.com/strugglion/p/10021173.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot提供了对WebSocket的支持,可以使用WebSocket在客户端和服务器之间进行双向通信。下面是使用Spring Boot实现WebSocket的几个步骤: 1. 添加依赖 在pom.xml文件中添加以下依赖: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> ``` 2. 创建WebSocket配置类 创建一个WebSocket配置类,用于配置WebSocket相关的参数和处理器。该类需要使用@EnableWebSocket注解来开启WebSocket支持,并实现WebSocketConfigurer接口来注册WebSocket处理器。 ``` @Configuration @EnableWebSocket public class WebSocketConfig implements WebSocketConfigurer { @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(new MyWebSocketHandler(), "/my-websocket") .setAllowedOrigins("*"); } } ``` 在这个配置类中,我们注册了一个WebSocket处理器MyWebSocketHandler,并将其映射到路径/my-websocket。同时,我们还设置了允许跨域访问。 3. 创建WebSocket处理器 创建一个WebSocket处理器,用于处理WebSocket连接和消息。该处理器需要实现WebSocketHandler接口,并重写其中的方法。 ``` public class MyWebSocketHandler implements WebSocketHandler { private static final Logger logger = LoggerFactory.getLogger(MyWebSocketHandler.class); @Override public void afterConnectionEstablished(WebSocketSession session) throws Exception { logger.info("WebSocket连接建立成功"); } @Override public void handleMessage(WebSocketSession session, WebSocketMessage<?> message) throws Exception { logger.info("收到WebSocket消息:{}", message.getPayload()); session.sendMessage(new TextMessage("收到消息")); } @Override public void handleTransportError(WebSocketSession session, Throwable exception) throws Exception { logger.error("WebSocket连接发生错误", exception); } @Override public void afterConnectionClosed(WebSocketSession session, CloseStatus closeStatus) throws Exception { logger.info("WebSocket连接关闭"); } @Override public boolean supportsPartialMessages() { return false; } } ``` 在这个处理器中,我们实现了WebSocketHandler接口,并重写了其中的方法。其中,afterConnectionEstablished方法在WebSocket连接建立成功后会被调用,handleMessage方法用于处理收到的消息,handleTransportError方法用于处理连接发生错误,afterConnectionClosed方法在连接关闭后会被调用。 4. 编写前端页面 在前端页面中使用JavaScript代码创建WebSocket连接,并发送和接收消息。 ``` var socket = new WebSocket("ws://localhost:8080/my-websocket"); socket.onopen = function() { console.log("WebSocket连接建立成功"); }; socket.onmessage = function(event) { console.log("收到WebSocket消息:" + event.data); }; socket.onclose = function() { console.log("WebSocket连接关闭"); }; socket.onerror = function() { console.error("WebSocket连接发生错误"); }; socket.send("发送消息"); ``` 在这个JavaScript代码中,我们创建了一个WebSocket连接,并设置了连接成功、收到消息、连接关闭和连接发生错误等事件的回调函数。同时,我们还发送了一条消息。 以上就是使用Spring Boot实现WebSocket的基本步骤。具体的实现还可以根据实际情况进行调整和优化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值