Führen Sie ein Shared Storage-Worklet aus, um eine URL auszuwählen und in einem abgegrenzten Frame zu rendern.
Bei der Shared Storage API handelt es sich um eine Sandbox-Angebot für allgemeine Zwecke, websiteübergreifende Speicherung, die viele mögliche Anwendungsfälle. Ein Beispiel ist die Häufigkeitskontrolle, in Chrome Beta 104.0.5086.0 und höher testen.
Führen Sie ein Worklet-Skript aus, um eine URL aus einer bereitgestellten Liste auf Grundlage der gespeicherten und diese URL dann in einem abgegrenzten Frame rendern. Damit können Sie neue Anzeigen oder anderen Content zu erstellen, wenn das Frequency Capping erreicht ist.
Creative-Auswahl nach Häufigkeit testen
Um die Creative-Auswahl nach Häufigkeit mit freigegebenem Speicher und abgegrenzten Frames zu testen, müssen Sie
Chrome 104.0.5086.0 oder höher installiert ist. Alle APIs zum Datenschutz bei Werbung unter chrome://settings/adPrivacy
aktivieren.
Sie können freigegebenen Speicher auch mit dem Flag --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames
in der Befehlszeile aktivieren.
Mit Codebeispielen experimentieren
Zum Auswählen und Erstellen einer intransparenten URL registrieren Sie ein Worklet-Modul zum Lesen freigegebener Speicherdaten. Die Worklet-Klasse erhält eine Liste mit bis zu acht URLs und gibt den Index der gewählten URL zurück.
Wenn der Client sharedStorage.selectURL()
aufruft, wird das Worklet
führt eine intransparente URL aus und gibt sie zurück, die in einen Fencing Frame gerendert werden soll.
Nehmen wir an, Sie möchten eine andere Anzeige oder einen anderen Inhalt basierend auf der Häufigkeit auswählen, mit der ein Nutzer die Anzeige oder den Inhalt zuvor gesehen hat. Sie können zählen, wie oft ein Nutzer einen Inhalt angesehen hat, und diesen Wert im freigegebenen Speicher speichern. Nach dem Speichern steht der Wert im freigegebenen Speicher für verschiedene Quellen zur Verfügung.
Dann liest das Shared Storage-Worklet die Werte im freigegebenen Speicher und erhöht den Zähler mit jeder zusätzlichen Ansicht. Wenn die Anzahl die vordefinierte Grenze nicht erreicht hat, wird der Inhalt zurückgegeben, den Sie rendern möchten (Index 1
). Andernfalls wird die Standard-URL zurückgegeben (Index 0
).
In diesem Fall gilt Folgendes:
creative-selection-by-frequencyjs
wird über den iFrame des Contenterstellers oder Werbetreibenden geladen und ist für zum Laden des Shared Storage-Worklets und zum Rendern der zurückgegebenen in einem abgegrenzten Frame.creative-selection-by-frequency-worklet.js
ist das freigegebene Speicher-Worklet, das den Häufigkeit ermitteln, mit der ermittelt wird, welche URL für einen Inhalt oder ein Creative zurückgegeben wird.
creative-selection-by-frequency.js
// The first URL is the default content or ad to be rendered when the frequency limits reached.
const CONTENT_URLS = [
{ url: `https://${contentProducerUrl}/default-content.html` },
{ url: `https://${contentProducerUrl}/example-content.html` },
];
async function injectAd() {
// Load the worklet module.
await window.sharedStorage.worklet.addModule('creative-selection-by-frequency-worklet.js');
// Set the initial frequency count
window.sharedStorage.set('frequency-count', 0, {
ignoreIfPresent: true,
});
// Run the URL selection operation to choose an ad based on the frequency count in shared storage.
const fencedFrameConfig = await window.sharedStorage.selectURL('creative-selection-by-frequency', CONTENT_URLS, {
resolveToConfig: true
});
// Render the opaque URL into a fenced frame
document.getElementById('content-slot').config = fencedFrameConfig;
}
injectAd();
creative-selection-by-frequency-worklet.js
const FREQUENCY_LIMIT = 5;
class CreativeSelectionByFrequencyOperation {
async run(urls, data) {
// Read the current frequency limit in shared storage
const count = parseInt(await sharedStorage.get('frequency-count'));
// Check if the frequency limit has been reached.
if (count === FREQUENCY_LIMIT) {
console.log('Frequency limit has been reached, and the default content will be rendered.');
return 0;
}
// Set the new frequency count in shared storage
await sharedStorage.set('frequency-count', count + 1);
return 1;
}
}
// Register the operation as 'creative-selection-by-frequency'.
register('creative-selection-by-frequency', CreativeSelectionByFrequencyOperation);
Anwendungsfälle
In diesem Abschnitt finden Sie alle verfügbaren Anwendungsfälle für die Select URL API. Wir werden weitere Beispiele hinzufügen, sobald wir Feedback erhalten und neue Testfälle entdecken.
- Anzeigen-Creatives rotieren: Speichern Sie Daten wie die Creative-ID und Nutzerinteraktionen, um zu ermitteln, welches Creative Nutzer auf verschiedenen Websites sehen.
- Anzeigen-Creatives nach Häufigkeit auswählen: Anhand der Daten zur Wiedergabeanzahl können Sie ermitteln, welches Creative Nutzern auf verschiedenen Websites präsentiert wird.
- A/B-Tests ausführen: Sie können einen Nutzer einer Testgruppe zuweisen und diese Gruppe dann in Shared Storage speichern, damit auf sie websiteübergreifend zugegriffen werden kann.
- Angebote für bekannte Kunden anpassen: Sie können benutzerdefinierte Inhalte und Calls-to-Action basierend auf dem Registrierungsstatus oder anderen Nutzerstatus teilen.
Feedback geben und erhalten
Der Vorschlag für die Select URL API befindet sich in der aktiven Diskussion und Entwicklung und kann sich ändern.
Wir würden uns sehr über Ihr Feedback zur Select URL API freuen.
- Angebot: Sehen Sie sich das detaillierte Angebot an.
- Diskussion: Nehmen Sie an der laufenden Diskussion teil, um Fragen zu stellen und Ihre Erkenntnisse zu teilen.
Auf dem Laufenden bleiben
- Mailingliste: Melden Sie sich für unsere Mailingliste an, um aktuelle Informationen und Ankündigungen zu den APIs „Select URL“ und „Shared Storage“ zu erhalten.
Benötigst du Hilfe?
- Entwicklersupport: Im Repository für den Privacy Sandbox-Entwicklersupport können Sie sich mit anderen Entwicklern austauschen und Antworten auf Ihre Fragen erhalten.