Как отправить данные события и имя события из весенней загрузки в угловую? - PullRequest
0 голосов
/ 22 октября 2019

Я занимаюсь разработкой приложения для чата в Angular и Spring Boot. Я использую EventSource в Angular и ApplicationEventPublisher интерфейс при загрузке Spring. Теперь я хочу отправить данные события и имя события из весенней загрузки в angular, чтобы eventSource.addListener("eventName", () => {}) перехватил событие на основе имени события. Скажите, пожалуйста, как отправить данные события и имя события из весенней загрузки в угловую. Мой контроллер весенней загрузки:

@CrossOrigin("*")
@RestController
public class MessageController {

    @Autowired
    MessageService messageService;

    @Autowired
    ApplicationEventPublisher applicationEventPublisher;

    private static final Logger logger = LoggerFactory.getLogger(MessageController.class);

    @GetMapping(value = "/event/")
    public void getEvent(@RequestHeader(value = "Content-Type", defaultValue = "text/event-stream")) 
    {
        logger.info("AWSTranslateController:: getEvent() method /event");
        MessageEvent messageEvent = new MessageEvent (this, "receiver3", response);
        applicationEventPublisher.publishEvent(messageEvent );
    }
}

Springboot MessageEvent POJO:

public class MessageEvent extends ApplicationEvent{
    private static final long serialVersionUID = 1L;
    private Object eventResponse;
    private String eventName;

    public MessageEvent(Object source, String eventName, Object eventResponse) {
        super(source);
        this.eventName = eventName;
       this.eventResponse = eventResponse;
    }

    public Object getEventResponse() {
        return eventResponse;
    }

    public String getEventName() {
        return eventName;
    }

}
...