Hapi
TrustCaptcha – Bot-Schutz

Hapi CAPTCHA-Integration

Binden Sie TrustCaptcha mit wenigen Zeilen TypeScript in eine Hapi-Route oder einen Pre-Handler ein. Stoppen Sie botgetriebenen Spam in Logins, Registrierungen und Kontaktformularen – ohne Ihre Joi-Schemas oder das Payload-Parsing zu brechen. EU-gehostet, DSGVO-konform und ohne Bilderrätsel.

Schnellstart

So funktioniert die Integration

1. CAPTCHA erstellen

Erstellen Sie ein Benutzerkonto oder melden Sie sich mit einem bestehenden Konto an. Anschließend erstellen Sie ein neues CAPTCHA oder wählen Sie ein bereits vorhandenes aus. Wenn Sie sich nicht sicher sind, ob TrustCaptcha das Richtige für Sie ist, können Sie unseren CAPTCHA-Service 14 Tage lang kostenlos und ohne Risiko testen.

Auf der CAPTCHA-Übersichtsseite finden Sie alle wichtigen Informationen wie den site-key und den license-key, und Sie können dort auch Ihren API-Key erstellen. Ermöglichen Sie Ihren Websites den Zugriff auf Ihr CAPTCHA, indem Sie diese einfach zur Liste der autorisierten Domains in den CAPTCHA-Sicherheitsregeln hinzufügen.

Start des Formulars zur Erstellung eines CAPTCHA.
CAPTCHA-Sicherheitsregeln eines Demo-CAPTCHAs.

2. CAPTCHA-Widget in Ihr Formular einbauen

Binden Sie das TrustCaptcha-Widget in das HTML-Formular ein, das Ihre Hapi-Route ausliefert. Das Widget läuft im Hintergrund und fügt beim Absenden ein verstecktes Feld tc-verification-token hinzu, das auf request.payload ankommt wie jeder andere Input.

contact.html
HTML
<script type="module" src="https://cdn.trustcomponent.com/trustcaptcha/3.0.x/trustcaptcha.esm.min.js"></script>

<form method="post" action="/contact">
    <input type="email" name="email" required>
    <trustcaptcha-component sitekey="<your_site_key>"></trustcaptcha-component>
    <button type="submit">Send</button>
</form>

Das CAPTCHA-Widget wird anschließend in Ihrem Formular angezeigt:

CAPTCHA abgeschlossen

Detaillierte Informationen zur CAPTCHA-Widget-Integration?
Für die vollständige Widget-Referenz – inklusive Themes, Sprachen, Custom Design und mehr – lesen Sie bitte unsere Dokumentation.

Dokumentation lesen

3. Token in Ihrer Hapi-Route validieren

Holen Sie in Ihrem Hapi-Route-Handler den Verifikationstoken aus request.payload, rufen Sie das Ergebnis über unsere Node.js-Library ab und entscheiden Sie, ob die Anfrage akzeptiert werden soll.

Installieren Sie zunächst unsere TrustCaptcha-Node.js-Library:

Install
bash
npm i @hapi/hapi @trustcomponent/trustcaptcha-nodejs

Validieren Sie dann den Token in Ihrer Hapi-Route und reagieren Sie auf das Ergebnis:

server.ts
TypeScript
import Hapi from "@hapi/hapi";
import { TrustCaptcha } from "@trustcomponent/trustcaptcha-nodejs";

const server = Hapi.server({ port: 8080 });

server.route({
  method: "POST",
  path: "/contact",
  handler: async (request, h) => {
    const payload = request.payload as Record<string, string>;
    const token = payload["tc-verification-token"] ?? "";

    try {
      const result = await TrustCaptcha.getVerificationResult("<your_api_key>", token);
      if (!result.verificationPassed || result.score > 0.5) {
        return h.response("CAPTCHA verification failed.").code(400);
      }
    } catch {
      return h.response("CAPTCHA verification failed.").code(400);
    }

    // CAPTCHA bestanden — Anfrage verarbeiten
    return "Thanks!";
  },
});

await server.start();

Detaillierte Informationen zur Hapi-CAPTCHA-Integration?
Für die vollständige Schritt-für-Schritt-Anleitung – inklusive einer wiederverwendbaren Pre-Extension für Projekte mit mehreren geschützten Routen – lesen Sie bitte unsere Dokumentation.

Dokumentation lesen

Anderes Backend-Framework statt Hapi?
Wenn Sie ein anderes Framework nutzen, wählen Sie hier das passende Rezept aus. Ist Ihr Framework nicht aufgeführt, können Ihre Softwareentwickler die Verifizierung selbst integrieren – mithilfe unserer Dokumentation – oder unser Support-Team nach einer vorgefertigten Integration fragen.

Actix Web
ASP.NET Core
Axum
Django
Echo
Express
FastAPI
Fastify
Fiber
Flask
Gin
Hapi
Laravel
Micronaut
NestJS
Next.js
Quarkus
Ruby on Rails
Sinatra
Spring Boot
Symfony

4. Glückwunsch 🎉

Sie sind jetzt durch TrustCaptcha geschützt – Glückwunsch!

CAPTCHA abgeschlossen

FAQs

Wo in einer Hapi-App läuft die CAPTCHA-Verifizierung?
Im Route-Handler, der das Formular-Submit empfängt – oder, für mehrere geschützte Routen, in einer Pre-Extension auf Route-Ebene. Beide haben Zugriff auf request.payload, in dem der CAPTCHA-Token (Standardname: "tc-verification-token") wie jedes andere Feld ankommt.
Brauche ich ein Payload-Parser-Plugin?
Nein. Hapi parst application/x-www-form-urlencoded und application/json automatisch – request.payload ist bereits das geparste Objekt, also ist kein zusätzliches Plugin nötig, um den CAPTCHA-Token zu lesen.
Wie führe ich die Verifizierung vor dem Route-Handler aus?
Mit Hapis Pre-Extension. Definieren Sie eine kleine async-Funktion, die den Token liest, unsere Node.js-Library aufruft und entweder h.continue (weiter) oder h.response(...).takeover() (mit 400 abbrechen) zurückgibt. Hängen Sie sie in den Route-Optionen unter pre an.
Entfernt Joi-Validierung den CAPTCHA-Token aus dem Payload?
Möglicherweise. Wenn Sie das Payload mit @hapi/joi (oder joi) validieren, deklarieren Sie tc-verification-token im Schema oder rufen Sie .unknown(true) auf, damit der Token erhalten bleibt, bevor Pre-Extension oder Handler ihn lesen.
Wie teile ich das SDK über viele Routen hinweg?
Bauen Sie eine einzige TrustCaptcha-Instanz beim Start und hängen Sie sie an das app-Objekt des Servers: server.app.trustCaptcha = new TrustCaptcha({ apiKey }). In jeder Pre-Extension oder jedem Handler lesen Sie sie über request.server.app.trustCaptcha – kein erneuter Aufbau pro Request.
Leads verlieren wegen CAPTCHAs?

TrustCaptcha blockiert Spam und Bots – nicht Ihre Kunden. Keine Rätsel, DSGVO-konform, in der EU gehostet.

CAPTCHA-Start
CAPTCHA abgeschlossen
Rätsel-freie UX
Läuft im Hintergrund, während Besucher tippen – so schließen mehr Personen Ihre Formulare ab und weniger brechen ab.
DSGVO-ready
EU-gehostet und privacy-first: keine Cookies, verschlüsselte Übertragung, automatische Bereinigung – inklusive sofort nutzbarer rechtlicher Ressourcen.
Mehrstufige Sicherheit
Adaptive Schutzmechanismen plus intelligentes Risiko-Scoring stoppen Missbrauch frühzeitig – selbst bei plötzlichen Angriffsspitzen.
Volle Kontrolle
Stellen Sie die Sensitivität ein, definieren Sie Allow-/Block-Listen und nutzen Sie Geoblocking – Sie entscheiden, wie streng die Verifizierung sein soll.

Schützen Sie Ihre Hapi-Anwendung mit TrustCaptcha – in nur wenigen Schritten!

  • EU-hosted & DSGVO-ready
  • Keine Rätsel
  • 14 Tage kostenlos testen