JavaScript-Integration

Integrieren Sie SilentShield in jede Website mit Vanilla JavaScript oder nutzen Sie unsere framework-spezifischen Anleitungen für React, Vue und Angular.

1. Script-Tag hinzufügen

Fügen Sie diesen Script-Tag in Ihr HTML ein, idealerweise vor dem schließenden </body>-Tag:

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

2. Widget initialisieren

Keine manuelle Initialisierung nötig — client.js initialisiert sich selbst und lädt Ihre Widget-Konfiguration (Theme, Sprache, Badge) aus den Dashboard-Einstellungen:

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.

Konfigurationsoptionen

apiKey
API-Key (erforderlich)
lang
Sprachcode oder 'auto' für Browser-Erkennung (Standard: 'auto'). Unterstützt 25 Sprachen.
thresholdSuspicious
Score unter diesem Wert löst eine Challenge aus (Standard: 0.6)
thresholdBlock
Score unter diesem Wert blockiert die Anfrage (Standard: 0.3)
telemetry
Verhaltensanalyse aktivieren (Standard: true)
captchaUI
CAPTCHA-UI bei Bedarf anzeigen (Standard: true)
fallbackCaptcha
Rechen-CAPTCHA als Fallback aktivieren (Standard: true)
showBrandingBadge
'Geschützt von SilentShield'-Badge anzeigen (Standard: true)
zeroPii
Browser-Fingerprinting deaktivieren für maximalen Datenschutz (Standard: false). Siehe Funktionen → Zero-PII-Modus.
debugOverlay
Debug-Overlay anzeigen (Standard: false)
onVerdict
Callback-Funktion, die bei einem Verdict aufgerufen wird

Single Page Applications (SPA)

Für SPAs mit clientseitigem Routing (React Router, Vue Router, etc.) beobachtet SilentShield automatisch DOM-Änderungen und erkennt neue Formulare. Keine erneute Initialisierung nach Navigation erforderlich.

Nonce auslesen

Nach dem Formular-Submit ist die Nonce als verstecktes Feld verfügbar:

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