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

getKey() 方法在 PushSubscription interface returns an ArrayBuffer representing a client public key, which can then be sent to a server and used in encrypting push message data.

句法

var key = subscription.getKey(name);
					

参数

名称
DOMString representing the encryption method used to generate a client key.  The value can be:

返回

ArrayBuffer .

范例

reg.pushManager.getSubscription()
  .then(function(subscription) {
  // Enable any UI which subscribes / unsubscribes from
  // push messages.
  subBtn.disabled = false;
  if (!subscription) {
    console.log('Not yet subscribed to Push')
    // We aren't subscribed to push, so set UI
    // to allow the user to enable push
    return;
  }
  // Set your UI to show they have subscribed for
  // push messages
  subBtn.textContent = 'Unsubscribe from Push Messaging';
  isPushEnabled = true;
  // initialize status, which includes setting UI elements for subscribed status
  // and updating Subscribers list via push
  var endpoint = subscription.endpoint;
  var key = subscription.getKey('p256dh');
  var auth = subscription.getKey('auth');
    ...
					

规范

规范 状态 注释
Push API 工作草案 This is the Push API spec, but note that getKey() is not currently specified in here. It is currently Firefox-only experimental.

浏览器兼容性

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
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

图例

完整支持

完整支持

不支持

不支持

见实现注意事项。

元数据

  • 最后修改: