PushSubscription

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.

참고: 이 기능은 Web Worker에서 사용할 수 있습니다.

Push APIPushSubscription 인터페이스는 구독의 URL 엔드포인트를 제공하고 푸시 서비스에서 구독을 취소할 수 있게 합니다.

이 인터페이스의 인스턴스는 직렬화할 수 있습니다.

인스턴스 속성

PushSubscription.endpoint 읽기 전용

푸시 구독과 관련된 엔드포인트가 포함된 문자열.

PushSubscription.expirationTime 읽기 전용

푸시 구독과 관련된 구독 만료 시간이 있는 경우 DOMHighResTimeStamp, 없는 경우 null입니다.

PushSubscription.options 읽기 전용

구독을 생성하는 데 사용된 옵션이 포함된 객체.

PushSubscription.subscriptionId 지원이 중단되었습니다 읽기 전용 비표준

푸시 구독과 관련된 구독 ID가 포함된 문자열.

인스턴스 메서드

PushSubscription.getKey()

클라이언트의 공개 키가 포함된 ArrayBuffer를 반환하며, 이 키는 서버에 전송되어 푸시 메시지 데이터를 암호화하는 데 사용할 수 있습니다.

PushSubscription.toJSON()

표준 직렬 변환기. 구독 속성의 JSON 표현을 반환합니다.

PushSubscription.unsubscribe()

푸시 서비스에서 구독을 취소하는 비동기 절차를 시작하고, 현재 구독이 성공적으로 등록 취소되면 불리언 값을 이행하는 Promise를 반환합니다.

예제

js
navigator.serviceWorker.ready.then((reg) => {
  reg.pushManager.getSubscription().then((subscription) => {
    subscription
      .unsubscribe()
      .then((successful) => {
        // 구독 취소 성공
      })
      .catch((e) => {
        // 구독 취소 실패
      });
  });
});

명세서

Specification
Push API
# pushsubscription-interface

브라우저 호환성

BCD tables only load in the browser

같이 보기