#java #websocket
С помощью vert.x core 3.2.1 написал простенький сервер, который принимает сообщения от подключившегося пользователя, однако хотелось бы реализовать ответ сервера(возврат сообщений пользователя обратно). Сам код: import io.vertx.core.Handler; import io.vertx.core.Vertx; import io.vertx.core.buffer.Buffer; import io.vertx.core.http.*; public class serverTest { public static void main(String[] args) throws Exception { HttpServer server = Vertx.vertx().createHttpServer(); server.websocketHandler(new Handler() { @Override public void handle(ServerWebSocket webs) { System.out.println("Client connected"); System.out.println("Client's message: "); webs.handler(new Handler () { @Override public void handle(Buffer event) { System.out.println("Received data " + event.toString("ISO-8859-1")); } }); } }); server.listen(8080, "localhost", res -> { if (res.succeeded()) { System.out.println("Server is now listening!"); } else { System.out.println("Failed to bind!"); } }); } } Через этот интерфейс и метод handle происходит прием сообщений: @Override public void handle(Buffer event) { System.out.println("Received data " + event.toString("ISO-8859-1")); } Как я понимаю, нужно туда вкрутить отправщика и поставить какое-то условия, чтобы в случае если сообщение пришло, он высылал его в ответ. Однако я не совсем понимаю как это сделать=(
Ответы
Ответ 1
http://vertx.io/docs/vertx-core/java/ - смотреть доки http://vertx.io/blog/some-rest-with-vert-x/ - классный пример httpServer.requestHandler(request -> { //Тело });Ответ 2
Поковырявшись и потыкав,обнаружил простой метод, благодаря которому можно слать ответы с сервера. Таким образом, метод handle перепишется следующим образом: public void handle(Buffer event) { System.out.println("Received data: " + event.toString("ISO-8859-1")); webs.writeFinalTextFrame("echo:"+event.toString("ISO-8859-1"));
Комментариев нет:
Отправить комментарий