这是 实验性技术
检查 浏览器兼容性表格 要小心谨慎在生产中使用这之前。

PushSubscription 接口在 Push API provides a subcription's URL endpoint and allows unsubscription from a push service.

An instance of this interface can be serialized.

特性

PushSubscription.endpoint 只读
USVString containing the endpoint associated with the push subscription.
PushSubscription.expirationTime 只读
DOMHighResTimeStamp of the subscription expiration time associated with the push subscription, if there is one, or null otherwise.
PushSubscription.options 只读

An object containing the options used to create the subscription.

PushSubscription.subscriptionId 只读
DOMString containing the subscription ID associated with the push subscription.

方法

PushSubscription.getKey()
返回 ArrayBuffer which contains the client's public key, which can then be sent to a server and used in encrypting push message data.
PushSubscription.toJSON()

Standard serializer — returns a JSON representation of the subscription properties.

PushSubscription.unsubscribe()
Starts the asynchronous process of unsubscribing from the push service, returning a Promise 解析为 布尔 when the current subscription is successfully unregistered.

范例

navigator.serviceWorker.ready.then(function(reg) {
  reg.pushManager.getSubscription().then(function(subscription) {
    subscription.unsubscribe().then(function(successful) {
      // You've successfully unsubscribed
    }).catch(function(e) {
      // Unsubscription failed
    })
  })
});
					

规范

规范 状态 注释
Push API
The definition of 'PushSubscription' in that specification.
工作草案 初始定义

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request. 更新 GitHub 上的兼容性数据
桌面 移动
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
PushSubscription Chrome 42 Edge ≤18 Firefox 44 注意事项
44 注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 29 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 48 Opera Android 29 Safari iOS 不支持 No Samsung Internet Android 4.0
endpoint Chrome 42 Edge 16 Firefox 44 注意事项
44 注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 29 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 48 Opera Android 29 Safari iOS 不支持 No Samsung Internet Android 4.0
expirationTime Chrome 60 Edge 16 Firefox 不支持 No IE 不支持 No Opera 47 Safari 不支持 No WebView Android 不支持 No Chrome Android 60 Firefox Android 不支持 No Opera Android 44 Safari iOS 不支持 No Samsung Internet Android 8.0
getKey() Chrome 42 Edge 16 Firefox 44 注意事项
44 注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 29 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 48 Opera Android 29 Safari iOS 不支持 No Samsung Internet Android 4.0
选项 Chrome 42 Edge 16 Firefox 44 注意事项
44 注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 29 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 48 Opera Android 29 Safari iOS 不支持 No Samsung Internet Android 4.0
subscriptionId Chrome 42 Edge ≤18 Firefox 不支持 No IE 不支持 No Opera 29 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 不支持 No Opera Android 29 Safari iOS 不支持 No Samsung Internet Android 4.0
toJSON() Chrome 42 Edge 17 Firefox 46 IE 不支持 No Opera Yes Safari 不支持 No WebView Android 不支持 No Chrome Android 50 Firefox Android 48 Opera Android Yes Safari iOS 不支持 No Samsung Internet Android 5.0
unsubscribe() Chrome 42 Edge 16 Firefox 44 注意事项
44 注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera Yes Safari 不支持 No WebView Android 不支持 No Chrome Android 50 Firefox Android 48 Opera Android Yes Safari iOS 不支持 No Samsung Internet Android 5.0

图例

完整支持

完整支持

不支持

不支持

见实现注意事项。

另请参阅

元数据

  • 最后修改:
  1. Push API
  2. PushSubscription
  3. 特性
    1. endpoint
    2. expirationTime
    3. 选项
    4. subscriptionId
  4. 方法
    1. getKey()
    2. toJSON()
    3. unsubscribe()
  5. Related pages for Push API
    1. PushEvent
    2. PushManager
    3. PushMessageData
    4. ServiceWorkerGlobalScope.onpush
    5. ServiceWorkerGlobalScope.onpushsubscriptionchange
    6. ServiceWorkerRegistration.pushManager

版权所有  © 2014-2026 乐数软件    

工业和信息化部: 粤ICP备14079481号-1