Navigator: метод deprecatedReplaceInURN()
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.
Экспериментально: Это экспериментальная технология .
Перед использованием в производстве внимательно проверьте таблицу совместимости с браузерами .
Метод deprecatedReplaceInURN() интерфейса Navigator заменяет указанные строки внутри сопоставленного URL, соответствующего заданному непрозрачному URN или внутреннему свойству FencedFrameConfig url.
Непрозрачный URN возвращается из источника, например, из метода Protected Audience API runAdAuction(), и затем устанавливается в качестве значения для HTMLFencedFrameElement.config. Соответствующий URL-адрес содержимого FencedFrameConfig или непрозрачного URN отображается внутри браузера и недоступен через JavaScript.
Однако вы можете заменить части этого внутреннего URL-адреса. Это распространенный подход для передачи данных выполнения в креативы рекламы для использования при рендеринге. deprecatedReplaceInURN() был предоставлен как временная мера для включения такой замены для URL-адресов fenced frame, помогая поставщикам рекламной технологии мигрировать существующие реализации в API песочницы конфиденциальности.
Синтаксис
deprecatedReplaceInURN(UrnOrConfig, replacements)
Параметры
UrnOrConfig-
Объект
FencedFrameConfigили непрозрачный URN, для которого вы хотите заменить части соответствующего внутреннего URL-адреса. replacements-
Объект, содержащий одну или несколько свойств, представляющих замены, которые вы хотите внести во внутренний URL. Каждый ключ свойства — это часть URL, которую вы хотите заменить, а каждое значение свойства — это строка, на которую вы хотите ее заменить. Обратите внимание, что:
- Части URL-адреса для замены должны быть в одном из следующих форматов:
${string}%%string%%
- Если часть URL-адреса имеет правильный формат, но часть не найдена в URL-адресе, возвращаемое promise все равно выполняется, но замена не выполняется.
- Части URL-адреса для замены должны быть в одном из следующих форматов:
Возвращаемое значение
Исключения
-
TypeErrorDOMException -
Выбрасывается, если:
-
UrnOrConfigне является допустимым объектомFencedFrameConfigили непрозрачным URN. - Любой из указанных ключей замены не соответствует разрешенным форматам.
-
Примеры
Следующий вызов может быть использован для возвращения непрозрачного URN:
const exampleURN = await navigator.runAdAuction({
...auctionConfig,
resolveToConfig: false,
});
Затем вы можете заменить части URL-адреса с помощью вызова deprecatedReplaceInURN() следующим образом:
await navigator.deprecatedReplaceInURN(exampleURN, {
"${foo}": "1",
"${bar}": "2",
"%%baz%%": "3",
});
Если начальный внутренний URL, связанный с URN, имеет вид:
https://example.com/a=${foo}&b=${bar}&c=%%baz%%
После замены он станет:
https://example.com/a=1&b=2&c=3
Спецификации
| Спецификация |
|---|
| Fenced Frame # dom-navigator-deprecatedreplaceinurn |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
deprecatedReplaceInURN |
115 | 115 | Нет | 101 | Нет | 115 | Нет | 77 | Нет | 23.0 | 115 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/deprecatedReplaceInURN