WindowSharedStorage
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Die WindowSharedStorage
-Schnittstelle der Shared Storage API repräsentiert den geteilten Speicher für einen bestimmten Ursprung innerhalb eines Standard-Browsing-Kontextes.
Auf WindowSharedStorage
wird über Window.sharedStorage
zugegriffen.
Instanzeigenschaften
worklet
Experimentell-
Enthält die Instanz des
SharedStorageWorklet
, die den geteilten Speicher-Arbeitsbereich für den aktuellen Ursprung repräsentiert.SharedStorageWorklet
beinhaltet die MethodeaddModule()
, die verwendet wird, um ein Modul zum geteilten Speicher-Arbeitsbereich hinzuzufügen.
Instanzmethoden
WindowSharedStorage
erbt Eigenschaften von seiner Elternschnittstelle, SharedStorage
.
run()
Experimentell-
Führt eine Run output gate Operation aus, die in einem Modul registriert wurde, das zum
SharedStorageWorklet
des aktuellen Ursprungs hinzugefügt wurde. selectURL()
Experimentell-
Führt eine URL Selection output gate Operation aus, die in einem Modul registriert wurde, das zum
SharedStorageWorklet
des aktuellen Ursprungs hinzugefügt wurde.
Beispiele
// Randomly assigns a user to a group 0 or 1
function getExperimentGroup() {
return Math.round(Math.random());
}
async function injectContent() {
// Add the module to the shared storage worklet
await window.sharedStorage.worklet.addModule("ab-testing-worklet.js");
// Assign user to a random group (0 or 1) and store it in shared storage
window.sharedStorage.set("ab-testing-group", getExperimentGroup(), {
ignoreIfPresent: true,
});
// Run the URL selection operation
const fencedFrameConfig = await window.sharedStorage.selectURL(
"ab-testing",
[
{ url: `https://your-server.example/content/default-content.html` },
{ url: `https://your-server.example/content/experiment-content-a.html` },
],
{
resolveToConfig: true,
},
);
// Render the chosen URL into a fenced frame
document.getElementById("content-slot").config = fencedFrameConfig;
}
injectContent();
Sehen Sie sich die Shared Storage API-Startseite für eine Schritt-für-Schritt-Anleitung zu diesem Beispiel und Links zu weiteren Beispielen an.
Spezifikationen
Specification |
---|
Shared Storage API # windowsharedstorage |
Browser-Kompatibilität
BCD tables only load in the browser