본문 바로가기

SSE2

[팀프로젝트] 15일차 - Sse를 이용해 실시간 알림기능 구현2 이전에 공부했던 Server-sent-event 방식의 HTTP통신을 활용하여 메신저가 도착하면, 실시간 알림을 전송하는 기능을 구현했다. 다음 클래스는 서버에서 클라이언트로 이벤트 전송시, 알림에 대한 정보를 담아둔 객체이다. 해당 객체의 멤버로 알림 내용에 메시지정보를 담은 MsgDto와 알림 전송 시간을 추가하였다. 그리고, 클라이언트에서 eventSource.addEventListener를 통해 서버가 보내온 이벤트 데이터들을 자유롭게 꺼내쓸수있도록 JSON형식으로 변환시켜주는 작업이 필요하다. 해당 작업은 서버단에서 클라이언트로 이벤트를 전송하는 NotifycationService클래스의 sendToclient 메소드에서 Notification을 비롯해서 event 안에 담아둘 여러 데이터들을 .. 2024. 2. 2.
[팀프로젝트] 14일차 - SSE를 사용한 실시간 알림 기능 구현 그룹웨어 시스템에서 사용자에게 도착한 메시지,전자결재 내역을 실시간으로 알림을 보내줄 기능을 구현하기위해 웹소켓, Pooling, Sse등 다양한 방법을 찾아보다가, Server-sent-event 방식이 가장 적합하다고 생각하여 Sse를 통해 실시간 알림 기능을 구현해보려고 한다. 관련자료를 찾아보는데 스프링 부트에서 구현한 예제밖에없어서 나는 스프링 레거시에서 진행하고있기에 아예 Sse에 대해 기초부터 공부한뒤 직접 적용시켜볼 예정이다. 우선 맨 처음 클라이언트에서 서버로 연결을 요청하는 것부터 해보았다. 클라이언트 -> 서버로 구독 요청하기 클라이언트 : 클라이언트는 맨 처음 서버에 요청을 보낼때 구독 요청을 하기위해 EventSource 객체를 생성하여 "/connect" 경로로 요청을 보낸다. .. 2024. 2. 1.