PushMessageData
注意:此功能仅在 Service Workers 中可用。
Push API 的 PushMessageData
接口提供了一些方法,可以让您以各种格式检索服务器发送的推送数据。
与 Fetch API 中类似的方法不同,这些方法只能调用一次,而这些方法可以多次调用。
通过 Push API 收到的消息由推送服务加密发送,然后由浏览器在通过 PushMessageData
接口的方法使其可访问之前自动解密。
实例属性
无。
实例方法
PushMessageData.arrayBuffer()
-
将数据提取为一个
ArrayBuffer
对象。 PushMessageData.blob()
-
将数据提取为一个
Blob
对象。 PushMessageData.bytes()
-
将数据提取为一个
Uint8Array
对象。 PushMessageData.json()
-
将数据提取为一个 JSON 对象。
PushMessageData.text()
-
将数据提取为纯文本字符串。
示例
js
self.addEventListener("push", (event) => {
const obj = event.data.json();
if (obj.action === "subscribe" || obj.action === "unsubscribe") {
fireNotification(obj, event);
port.postMessage(obj);
} else if (obj.action === "init" || obj.action === "chatMsg") {
port.postMessage(obj);
}
});
规范
规范 |
---|
Push API # pushmessagedata-interface |
浏览器兼容性
BCD 表格仅在浏览器中加载