Używaj workletu Shared Storage do przeprowadzania testów A/B.
Shared Storage API to propozycja w ramach Piaskownicy prywatności dotycząca ogólnego przeznaczenia pamięci między witrynami, która obsługuje wiele możliwych przypadków użycia. Jednym z takich przykładów są testy A/B, które można przeprowadzać w Chrome w wersji 104.0.5086.0 lub nowszej.
Możesz przypisać użytkownika do grupy eksperymentalnej, a następnie zapisać tę grupę w pamięci współdzielonej, aby można było uzyskać do niej dostęp w środowisku obejmującym wiele witryn.
Wypróbuj testy A/B
Aby przeprowadzić eksperyment z testami A/B w pamięci współdzielonej, upewnij się, że używasz Chrome w wersji 104.0.5086.0 lub nowszej. Włącz wszystkie interfejsy API ochrony prywatności w reklamach w sekcji chrome://settings/adPrivacy.
Pamięć współdzieloną możesz też włączyć za pomocą flagi --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames w wierszu poleceń.
Eksperymentowanie z przykładowymi fragmentami kodu
Aby sprawdzić, czy eksperyment przynosi oczekiwane efekty, możesz przeprowadzić test A/B w wielu witrynach. Jako reklamodawca lub producent treści możesz wyświetlać różne treści lub reklamy w zależności od tego, do której grupy należy użytkownik. Przypisanie do grupy jest zapisywane w pamięci współdzielonej, ale nie można go wyeksportować.
W tym przykładzie:
ab-testing.jspowinien być umieszczony w ramce, która mapuje element sterujący i 2 treści eksperymentu. Skrypt wywołuje worklet Shared Storage na potrzeby eksperymentu.ab-testing-worklet.jsto element roboczy pamięci współdzielonej, który zwraca grupę, do której przypisany jest użytkownik, co decyduje o tym, która reklama zostanie wyświetlona.
// Randomly assigns a user to a group 0 or 1
function getExperimentGroup() {
return Math.round(Math.random());
}
async function injectContent() {
// Register 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();
class SelectURLOperation {
async run(urls, data) {
// Read the user's experiment group from Shared Storage
const experimentGroup = await sharedStorage.get('ab-testing-group');
// Return the corresponding URL (first or second item in the array)
return urls.indexOf(experimentGroup);
}
}
register('ab-testing', SelectURLOperation);
Przypadki użycia
W tej sekcji znajdziesz wszystkie dostępne przypadki użycia interfejsu Select URL API. Będziemy dodawać kolejne przykłady, gdy będziemy otrzymywać opinie i odkrywać nowe przypadki testowe.
- Rotacja kreacji reklamowych: przechowuj dane, takie jak identyfikator kreacji i interakcje użytkowników, aby określić, które kreacje wyświetlają się użytkownikom w różnych witrynach.
- Wybieranie kreacji reklamowych według częstotliwości wyświetleń: na podstawie danych o liczbie wyświetleń możesz określić, które kreacje wyświetlają się użytkownikom w różnych witrynach.
- Przeprowadzanie testów A/B: możesz przypisać użytkownika do grupy eksperymentalnej, a potem zapisać tę grupę w Shared Storage, aby umożliwić dostęp do niej w różnych witrynach.
- Dostosowywanie interfejsu dla znanych klientów: udostępniaj treści i wezwania do działania na podstawie stanu rejestracji lub innych stanów użytkownika.
Angażowanie się i przesyłanie opinii
Pamiętaj, że propozycja interfejsu Select URL API jest obecnie przedmiotem dyskusji i prac rozwojowych, a jej treść może ulec zmianie.
Chętnie poznamy Twoją opinię o interfejsie Select URL API.
- Oferta: sprawdź szczegółową ofertę.
- Dyskusja: dołącz do bieżącej dyskusji, aby zadawać pytania i dzielić się spostrzeżeniami.