Я прочитал эту документацию -> websockets-next и справочное руководство websockets-next.
Я понимаю, как можно реализовать сообщение чата, потому что клиент реагирует на конечные точки, но я понятия не имею, как сервер может отправлять сообщения клиентам, если на сервере происходят обновления.
Во-вторых, как я могу отправлять не только текстовые сообщения, но и целые DTO?
У меня есть никогда не работал с сокетами, поэтому знаю только REST-Endpoints.
Мой пример кода:
DTO для клиентов:
@Data
public class InformationForClientDTO {
private List list;
private int version;
}
Код на сервере:
@ApplicationScoped
public class ServerCode {
public void someCalculation(){
//Server has reached some point which is important for clients. Send listForClients to all connected clients:
Arraylist listForClients;
//How to send this list to the clients? How can I call the websocket with all clients and send them the DTOs?
}
}
Пример кода Из вики Quarkus:
@WebSocket(path = "/chat/{username}")
public class ChatWebSocket {
// Declare the type of messages that can be sent and received
public enum MessageType {USER_JOINED, USER_LEFT, CHAT_MESSAGE}
public record ChatMessage(MessageType type, String from, String message) {
}
@Inject
WebSocketConnection connection;
@OnOpen(broadcast = true)
public ChatMessage onOpen() {
return new ChatMessage(MessageType.USER_JOINED, connection.pathParam("username"), null);
}
@OnClose
public void onClose() {
ChatMessage departure = new ChatMessage(MessageType.USER_LEFT, connection.pathParam("username"), null);
connection.broadcast().sendTextAndAwait(departure);
}
@OnTextMessage(broadcast = true)
public ChatMessage onMessage(ChatMessage message) {
return message;
}
}
Подробнее здесь: https://stackoverflow.com/questions/785 ... to-clients
Quarkus websockets-next Отправка сообщений клиентам ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1716329522
Anonymous
Я прочитал эту документацию -> websockets-next и справочное руководство websockets-next.
Я понимаю, как можно реализовать сообщение чата, потому что клиент реагирует на конечные точки, но я понятия не имею, как сервер может отправлять сообщения клиентам, если на сервере происходят обновления.
Во-вторых, как я могу отправлять не только текстовые сообщения, но и целые DTO?
У меня есть никогда не работал с сокетами, поэтому знаю только REST-Endpoints.
Мой пример кода:
[b]DTO для клиентов:[/b]
@Data
public class InformationForClientDTO {
private List list;
private int version;
}
[b]Код на сервере:[/b]
@ApplicationScoped
public class ServerCode {
public void someCalculation(){
//Server has reached some point which is important for clients. Send listForClients to all connected clients:
Arraylist listForClients;
//How to send this list to the clients? How can I call the websocket with all clients and send them the DTOs?
}
}
[b]Пример кода Из вики Quarkus:[/b]
@WebSocket(path = "/chat/{username}")
public class ChatWebSocket {
// Declare the type of messages that can be sent and received
public enum MessageType {USER_JOINED, USER_LEFT, CHAT_MESSAGE}
public record ChatMessage(MessageType type, String from, String message) {
}
@Inject
WebSocketConnection connection;
@OnOpen(broadcast = true)
public ChatMessage onOpen() {
return new ChatMessage(MessageType.USER_JOINED, connection.pathParam("username"), null);
}
@OnClose
public void onClose() {
ChatMessage departure = new ChatMessage(MessageType.USER_LEFT, connection.pathParam("username"), null);
connection.broadcast().sendTextAndAwait(departure);
}
@OnTextMessage(broadcast = true)
public ChatMessage onMessage(ChatMessage message) {
return message;
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78514562/quarkus-websockets-next-send-messages-to-clients[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия