JavaScript интеграция

Интегрирайте SilentShield във всеки уебсайт, използвайки чист JavaScript, или използвайте нашите ръководства за React, Vue и Angular.

1. Добавете скрипт тага

Добавете този скрипт таг към вашия HTML, идеално преди затварящия таг </body>:

HTMLhtml
<script src="https://api.silentshield.io/client.js?k=YOUR_API_KEY" crossorigin="anonymous" defer></script>

2. Инициализирайте уиджета

Не е необходима ръчна инициализация — client.js се инициализира сам и зарежда конфигурацията на уиджета (тема, език, значка) от настройките в таблото:

JavaScriptjavascript
// No init call needed — client.js bootstraps itself as soon as it loads
// and pulls your widget configuration (theme, language, badge) from the
// dashboard: App → API keys → [your key] → Widget.

Опции за конфигурация

apiKey
API ключ (задължителен)
lang
Езиков код или 'auto' за автоматично разпознаване на езика на браузъра (по подразбиране: 'auto'). Поддържа 25 езика.
thresholdSuspicious
Резултат под тази стойност задейства предизвикателство (по подразбиране: 0.6)
thresholdBlock
Резултат под тази стойност блокира заявката (по подразбиране: 0.3)
telemetry
Активиране на проследяване на поведението (по подразбиране: true)
captchaUI
Показване на CAPTCHA интерфейс при необходимост (по подразбиране: true)
fallbackCaptcha
Активиране на резервна математическа CAPTCHA (по подразбиране: true)
showBrandingBadge
Показване на значка „Защитен от SilentShield" (по подразбиране: true)
zeroPii
Disable browser fingerprinting for maximum privacy (default: false). See Features → Zero-PII Mode.
debugOverlay
Показване на дебъг наслагване (по подразбиране: false)
onVerdict
Функция за обратно извикване при получаване на вердикт

Приложения с една страница (SPA)

За SPA, използващи маршрутизация от страна на клиента (React Router, Vue Router и др.), SilentShield автоматично наблюдава промените в DOM и открива нови формуляри. Не е необходимо повторно инициализиране след навигация.

Четене на nonce

След изпращане на формуляр, nonce е достъпен като скрито поле:

HTMLhtml
const nonce = document.querySelector('input[name="behavior_nonce"]')?.value;