gpt4 book ai didi

java - 编写客户端在 spring boot 中连接到 websocket

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:25:11 27 4
gpt4 key购买 nike

我正在尝试使用 spring boot 制作基于 websocketed 的服务器/客户端应用程序。

服务器接受套接字连接,然后当它收到来自客户端的文本消息时,它会处理它,然后返回一些数据。服务器有一个 websocket 处理程序,可以正确处理请求。

public class DataWebSocketHandler extends TextWebSocketHandler {

private static Logger logger = LoggerFactory.getLogger(DataWebSocketHandler.class);

private final DataService dataService;

@Autowired
public DataWebSocketHandler(DataService dataService) {
this.dataService = dataService;
}

@Override
public void afterConnectionEstablished(WebSocketSession session) {
logger.debug("Opened new session in instance " + this);
}

@Override
public void handleTextMessage(WebSocketSession session, TextMessage message)
throws Exception {
byte[] payload = this.dataService.getDataBytes(message.getPayload());
session.sendMessage(new BinaryMessage(payload));
}

@Override
public void handleTransportError(WebSocketSession session, Throwable exception)
throws Exception {
session.close(CloseStatus.SERVER_ERROR);
}

}

并注册

@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
registry.addHandler(dataWebSocketHandler(), "/data").withSockJS();
}

我的问题是,我不知道如何编写一个可以连接到服务器的客户端(假设我正确地编写了服务器)以及扩展如何发送消息以及如何接收数据客户端。

我没能找到这方面的例子,但是有很多地方写了一个 websocket,它向所有订阅了一个套接字的客户端广播,这是我不想要的。

服务器使用嵌入式tomcat服务器。

最佳答案

关于java - 编写客户端在 spring boot 中连接到 websocket,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29386301/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com