Notice
Recent Posts
Recent Comments
Link
투케이2K
332. (javaScript) 자바스크립트 BroadcastChannel 사용해 브로드캐스팅 postMessage 알림 전달 및 onmessage 알림 수신 감지 확인 본문
JavaScript
332. (javaScript) 자바스크립트 BroadcastChannel 사용해 브로드캐스팅 postMessage 알림 전달 및 onmessage 알림 수신 감지 확인
투케이2K 2023. 10. 12. 19:38[개발 환경 설정]
개발 툴 : Edit++
개발 언어 : JavaScript
[소스 코드]
<!-- ===================================================================================================== -->
<!-- [자바스크립트 코드 지정] -->
<!-- ===================================================================================================== -->
<script>
/*
-----------------------------------------
[요약 설명]
-----------------------------------------
1. 브로드 캐스트 채널 API : 동일한 Origin 을 가지고 있는 windows , tabs , frames 에게 브로드캐스팅 이벤트 알림 전달 및 통신을 수행합니다
-----------------------------------------
2. 브로드 캐스트 채널 기능은 Web Workers 에서 사용할 수 있습니다
-----------------------------------------
3. BroadcastChannel 개체를 생성 해 특정 채널에 push, receive 를 할 수 있습니다
-----------------------------------------
4. postMessage : 특정 채널에 push 수행시 사용 됩니다
-----------------------------------------
5. onmessage : 구독하고 있는 채널에 대한 receive 상태를 확인합니다
-----------------------------------------
6. close : 등록 된 채널 연결 해제 시 사용합니다
-----------------------------------------
7. 참고 사항 : 로컬 html 파일에서 해당 브로드캐스팅 수행 시 동작 되지 않으며, 서버에서 테스트 필요
-----------------------------------------
8. 참고 사이트 :
https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API#conclusion
-----------------------------------------
*/
// [html 최초 로드 및 이벤트 상시 대기 실시]
window.onload = async function() {
console.log("");
console.log("=========================================");
console.log("[window onload] : [start]");
console.log("=========================================");
console.log("");
// [BroadcastChannel 생성 실시 : 채널은 TWOK_CHANNEL]
const bc = new BroadcastChannel("TWOK_CHANNEL");
// [메시지 수신 이벤트 등록]
bc.onmessage = (event) => {
console.log("");
console.log("=========================================");
console.log("[BroadcastChannel] : [Message Receive]");
console.log("---------------------------------------");
console.log("[event] : " + event);
console.log("=========================================");
console.log("");
// [채널 연결 종료]
bc.close();
};
// [채널에 알림 push 수행]
bc.postMessage("Broadcast 알림 입니다");
};
</script>
반응형
'JavaScript' 카테고리의 다른 글
Comments