JavaScript интеграция
Интегрирайте SilentShield във всеки уебсайт, използвайки чист JavaScript, или използвайте нашите ръководства за React, Vue и Angular.
1. Добавете скрипт тага
Добавете този скрипт таг към вашия HTML, идеално преди затварящия таг </body>:
HTMLhtml
<script src="https://api.silentshield.io/client.js?key=YOUR_API_KEY" defer></script>2. Инициализирайте уиджета
Извикайте SilentShield.init() след зареждане на DOM:
JavaScriptjavascript
document.addEventListener('DOMContentLoaded', function() {
SilentShield.init({
apiKey: 'YOUR_API_KEY',
lang: 'auto',
features: {
telemetry: true,
captchaUI: true,
fallbackCaptcha: true,
showBrandingBadge: true,
},
onVerdict: function(response) {
console.log('SilentShield verdict:', response);
}
});
});Опции за конфигурация
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="ss_nonce"]')?.value;