Как автоматически обновить данные на странице Angular 7 и Spring Boot - PullRequest
0 голосов
/ 16 февраля 2019

Я пытаюсь реализовать страницу, где данные обновляются в режиме реального времени.Я пытался реализовать какой-то веб-сокет по этому вопросу, но в основном все примеры и учебные пособия показывают, что существует необходимость отправки сообщения (идея в моем проекте заключается в том, что данные будут загружаться из другого источника, поэтому у меня нет постафункции, только получить).Ситуация усложняется, потому что это в основном страница сведений, которая загружает результаты по определенному идентификатору.

Поэтому мой вопрос - как я могу реализовать обновление в режиме реального времени?

Это из Controller.java

@GetMapping("data/{data_id}")
public Optional<Data> findByData_id(@PathVariable("data_id") Long data_id){
Optional<Data> data = dataRepository.findById(data_id);
return data;
}

из data.service.ts

getDataById(data_id: number): Observable<any> {
return this.http.get<Data[]>('http://localhost:8080/data/' + data_id)
}

из data.details.component.ts

const tracker_id = +this.route.snapshot.params["data_id"];
this.data_table.getDataById[data_id]
.subscribe(data_table=> {
this.data_table.data_table = data_table as Data[];
this.data_table_var = this.data_table.data_table;

1 Ответ

0 голосов
/ 16 февраля 2019

Если вы хотите обновлять данные в реальном времени, вам нужно использовать веб-сокет.

@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfiguration extends AbstractWebSocketMessageBrokerConfigurer{
    @Override
    public void registerStompEndpoints(StompEndpointRegistry registry) {
        registry.addEndpoint("/socket")
                .setAllowedOrigins("*")
                .withSockJS();
    }

    @Override
    public void configureMessageBroker(MessageBrokerRegistry registry) {
        registry.setApplicationDestinationPrefixes("/app")
                .enableSimpleBroker("/chat");
    }
}

Это хорошая справка https://medium.com/oril/spring-boot-websockets-angular-5-f2f4b1c14cee

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...