Замена клиента 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"));
});