SharedStorageWorklet
Deprecated
To be removed
This feature is pending removal from browsers. Using it now may lead to broken functionality in future updates. Following the announcement that Chrome will maintain its current approach to third-party cookies, Chrome decided to withdraw certain Privacy Sandbox features including the shared storage. >
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Das SharedStorageWorklet-Interface der Shared Storage API repräsentiert das Shared Storage Worklet für den aktuellen Ursprung.
SharedStorageWorklet verfügt nicht über eigene Eigenschaften oder Methoden. Stattdessen erbt es die Methode addModule() von der Worklet-Schnittstelle. Diese Methode wird zum Hinzufügen eines Moduls verwendet.
Im Gegensatz zu einem regulären Worklet:
- Falls die aufrufende Seite die Shared Storage API nicht in einem Anmeldeprozess der Privacy Sandbox aufgenommen hat, werden Aufrufe von
sharedStorageWorklet.addModule()abgelehnt. SharedStorageWorkleterlaubt aus Datenschutzgründen nur das Hinzufügen eines einzigen Moduls. Selbst bei erfolgreicher Anmeldung werden wiederholte Aufrufe vonaddModule()auf demselben Shared Storage Worklet abgelehnt.
Auf SharedStorageWorklet wird über WindowSharedStorage.worklet zugegriffen.
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 an, um eine Anleitung zu diesem Beispiel und Links zu anderen Beispielen zu erhalten.