Мне нужно, чтобы мобильное приложение добавило веб-сокет в бэкэнд для реализации чата. Я нашел пример https://github.com/callicoder/spring-boot-websocket-chat-demo,, но здесь чат не для мобильного приложения, я не совсем понимаю, как запросить чат? надо добавить api, но где?
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/ws").withSockJS();
}
@Override
public void configureMessageBroker(MessageBrokerRegistry registry) {
registry.setApplicationDestinationPrefixes("/app");
registry.enableSimpleBroker("/topic");
}
У меня есть addEndpoint
, я должен написать в нем api?
Поскольку мое приложение не работает с браузером, как заменить .withSockJS ()
?
@RestController
@RequestMapping(name = "api/chat")
public class ChatController {
@MessageMapping("/chat.sendMessage")
@SendTo("/topic/public")
public ChatMessage sendMessage(@Payload ChatMessage chatMessage) {
return chatMessage;
}
@SendTo("/topic/public")
public ChatMessage addUser(@Payload ChatMessage chatMessage,
SimpMessageHeaderAccessor headerAccessor) {
headerAccessor.getSessionAttributes().put("username", chatMessage.getSender());
return chatMessage;
}
}
или данные должны прийти через этот API?
Я не понимаю, как получить данные в websocket через API от мобильного приложения, чтобы сохранить его