Замена клиента SockJS JavaScript на клиент Java Vert.x

У меня есть рабочий сервер на java vertx и клиент, но в SockJS я хотел бы сделать этого клиента на java, как я могу преобразовать это в java:

const EB_EVENT_TO_SERVER = "event.to.server";
const EB_EVENT_TO_CLIENT = "event.to.client.";
const EB_EVENT_TO_CLIENTS = "event.to.clients";

let EB_PATH;
let eb;

function initEventBus()
{
 EB_PATH  = `${config.host}/${config.folder}/${config.group}/events`;
 eb =  new EventBus(EB_PATH);
 eb.onopen = openEventBus;
}

function sendEventToServer(message)
{
 eb.send(EB_EVENT_TO_SERVER, message);
}

function openEventBus()
{
 eb.registerHandler(EB_EVENT_TO_CLIENT + playerId, (error, message) => onReceiveUnicast(error, message));
 eb.registerHandler(EB_EVENT_TO_CLIENTS, (error, message) => onReceiveBroadcast(error, message));
}

function translateUnicast(json)
{
    if (json.hasOwnProperty("players") && json.hasOwnProperty("bricks"))
        translateJsonToCanvas(json);
}

function translateBroadcast(json)
{

}

function onReceiveUnicast(error, message)
{
    if (error)
        console.error("Something went wrong on the EventBus while receiving Unicast");
    else
        translateUnicast(message.body)
}

function onReceiveBroadcast(error, message)
{
    if (error)
        console.error("Something went wrong on the EventBus while receiving Broadcast");
    else
        translateBroadcast(message.body)
}

В основном я ищу базовый стартовый код для клиента vertx для подключения к моему серверу vertx.

1 ответ

Попробуйте этот пример

Основной код для отправки и получения сообщений:

    HttpClient client = vertx.createHttpClient();

    client.websocket(8080, "localhost", "/some-uri", websocket -> {
      websocket.handler(data -> {
        System.out.println("Received data " + data.toString("ISO-8859-1"));
        client.close();
      });
      websocket.writeBinaryMessage(Buffer.buffer("Hello world"));
    });
Другие вопросы по тегам