JavaScript SDK - метод resanitize
Этот метод повторно применяет санитизацию к текущему DOM и повторно отправляет всё, что изменилось, обновляя уже записанные узлы в середине сессии.
Санитизация обычно применяется при первой записи узла. Если вы измените, что именно должно быть скрыто или замаскировано, после того как узел уже был захвачен, это изменение само по себе не отразится в воспроизведении. Вызовите resanitize(), чтобы заставить трекер повторно просканировать и применить обновлённые правила санитизации к узлам, которые уже являются частью записи.
Вызывайте его после того, как вы:
- переключили атрибуты
data-openreplay-obscured/data-openreplay-hiddenна элементах, которые уже находятся на странице, или - изменили то, на что опирается ваш
domSanitizer(class, id и т. д.).
Сигнатура
Section titled Сигнатураresanitize(el?: Element): void
Параметры
Section titled Параметрыel?: Element: Самый верхний узел, который вы изменили. Трекер повторно сканирует этот элемент и его поддерево. Опустите его, чтобы повторно просканировать весь документ.
Возвращаемое значение
Section titled Возвращаемое значениеЭтот метод не возвращает никакого значения. Повторно вычисленная санитизация применяется непосредственно к текущей записи, и результаты видны в платформе OpenReplay.
Пример
Section titled Пример// Obscure a section after the user opens sensitive content
const panel = document.getElementById('account-details')
panel.setAttribute('data-openreplay-obscured', '')
// Tell the tracker to re-apply sanitization to that subtree
tracker.resanitize(panel)
// Re-scan the whole document after changing domSanitizer rules
tracker.resanitize()