【问题标题】:Writing a client to connect to websocket in spring boot在 Spring Boot 中编写客户端以连接到 websocket
【发布时间】:2015-06-05 20:02:23
【问题描述】:

我正在尝试使用 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 tomcat spring-boot


    【解决方案1】:

    【讨论】:

    • 仅链接的答案不是最好的。
    • 显然,他们移动了这些样本 :(
    • 链接失效。
    • @PrasantaBiswas 更新了链接。
    猜你喜欢
    • 2017-02-02
    • 2023-03-13
    • 1970-01-01
    • 2021-01-16
    • 1970-01-01
    • 2015-05-22
    • 1970-01-01
    • 2014-04-17
    • 1970-01-01
    相关资源
    最近更新 更多