JavaScript-integratie

Integreer SilentShield in elke website met standaard JavaScript, of gebruik onze frameworkspecifieke handleidingen voor React, Vue en Angular.

1. De Script Tag toevoegen

Voeg deze Script Tag toe aan uw HTML, bij voorkeur vóór de afsluitende </body>-tag:

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

2. De Widget initialiseren

Roep SilentShield.init() aan nadat de DOM is geladen:

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);
    }
  });
});

Configuratieopties

apiKey
API Key (verplicht)
lang
Taalcode of 'auto' voor browserdetectie (standaard: 'auto'). Ondersteunt 25 talen.
thresholdSuspicious
Score onder deze waarde activeert een uitdaging (standaard: 0.6)
thresholdBlock
Score onder deze waarde blokkeert het verzoek (standaard: 0.3)
telemetry
Gedragsregistratie inschakelen (standaard: true)
captchaUI
CAPTCHA-interface tonen indien nodig (standaard: true)
fallbackCaptcha
Reken-CAPTCHA als terugvaloptie inschakelen (standaard: true)
showBrandingBadge
Badge 'Beschermd door SilentShield' tonen (standaard: true)
zeroPii
Disable browser fingerprinting for maximum privacy (default: false). See Features → Zero-PII Mode.
debugOverlay
Debug-overlay tonen (standaard: false)
onVerdict
Callback-functie die wordt aangeroepen wanneer een oordeel is ontvangen

Single Page Applications (SPA)

Voor SPA's met client-side routing (React Router, Vue Router, etc.) observeert SilentShield automatisch DOM-wijzigingen en detecteert nieuwe formulieren. Herinitialisatie na navigatie is niet nodig.

De Nonce uitlezen

Na het verzenden van het formulier is de Nonce beschikbaar als verborgen veld:

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