PushEvent
Baseline 2023
Newly available
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
참고: This feature is only available in Service Workers.
Push API의 PushEvent
인터페이스는 수신된 푸시 메시지를 나타냅니다. 이 이벤트는 ServiceWorker
의 전역 범위로 전송됩니다. 애플리케이션 서버에서 PushSubscription
로 전송된 정보를 포함합니다.
생성자
PushEvent()
-
새로운
PushEvent
객체를 생성합니다.
인스턴스 속성
부모인 ExtendableEvent
에서 속성을 상속받습니다. 다음은 추가 속성입니다.
PushEvent.data
읽기 전용-
PushSubscription
으로 전송된 데이터를 포함하는PushMessageData
객체에 대한 참조를 반환합니다.
인스턴스 메서드
부모인 ExtendableEvent
에서 메서드를 상속받습니다.
예제
다음 예제는 PushEvent
에서 데이터를 가져와 서비스 워커의 모든 클라이언트에 표시합니다.
self.addEventListener("push", (event) => {
if (!(self.Notification && self.Notification.permission === "granted")) {
return;
}
const data = event.data?.json() ?? {};
const title = data.title || "Something Has Happened";
const message =
data.message || "Here's something you might want to check out.";
const icon = "images/new-notification.png";
const notification = new self.Notification(title, {
body: message,
tag: "simple-push-demo-notification",
icon,
});
notification.addEventListener("click", () => {
clients.openWindow(
"https://example.blog.com/2015/03/04/something-new.html",
);
});
});
명세서
Specification |
---|
Push API # pushevent-interface |
브라우저 호환성
BCD tables only load in the browser