개발정보
Service Worker
잉여개발자
2022. 11. 23. 12:05
반응형
서비스 워커는 브라우저가 백그라운드에서 실행하는 스크립트로, 웹페이지와 별개로 작동하면서
웹페이지 또는 사용자의 인터랙션이 필요하지 않는 기능을 제공한다.
오프라인에 문제가 생겼을 때 해결을 하기 위해서 등장하였다.
개발자에게 오프라인 환경을 통제할 수 있는 권한을 부여해서, 오프라인 환경에서 캐시와의 상호작용,
백그라운드 동기화, 푸시 알람 등의 기능을 가능하게 했다.
서비스 워커의 특징
▶ 사용자가 요청해야 동작하고, 목표하는 일이 끝날 때까지 꺼지지 않는다.
▶ 웹페이지 밖에서 동작하기 때문에 브라우저의 열고 닫힘과는 무관하게 동작한다.
▶ 브라우저 밖에서 동작하므로 DOM 요소에 접근할 수 없다.
활용 예시
▶ 캐시와의 상호 작용
서비스 워커가 Fetch 이벤트의 중간자 역할로 HTTP를 통해 정보를 요청하는 대신 가지고 있는 캐시에서
자료를 통해서 전달한다.
이때 캐시가 삭제되지 않는 한 브라우저는 인터넷 연결 없이도 캐시 정보를 보여줄 수 있다.
▶ 푸쉬 알람
브라우저 창이 닫힌 상태에도 동작이 가능하므로, 푸쉬 알람이 가능하다.
▶ 백그라운드 동기화
채팅 메시지 또는 사진 업로드 등 작업 도중 컴퓨터가 오프라인 상태가 되어도
온라인 상태가 될 때 다시 마무리할 수 있다.
반응형