ExtendableMessageEvent: origin-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.

Hinweis: Dieses Feature ist nur verfügbar in Service Workers.

Die origin-Eigenschaft des ExtendableMessageEvent-Interfaces ist eine schreibgeschützte Eigenschaft, die den Ursprung des Client zurückgibt, der die Nachricht gesendet hat.

Wert

Ein String.

Beispiele

Wenn der folgende Code in einem Service Worker verwendet wird, um auf Push-Nachrichten zu antworten, indem die über PushMessageData empfangenen Daten über eine Kanalnachricht an den Hauptkontext gesendet werden, wird das Ereignisobjekt von onmessage ein ExtendableMessageEvent sein.

js
let port;

self.addEventListener("push", (e) => {
  const obj = e.data.json();

  if (obj.action === "subscribe" || obj.action === "unsubscribe") {
    port.postMessage(obj);
  } else if (obj.action === "init" || obj.action === "chatMsg") {
    port.postMessage(obj);
  }
});

self.onmessage = (e) => {
  console.log(e.origin);
  port = e.ports[0];
};

Spezifikationen

Specification
Service Workers
# extendablemessage-event-origin

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch