Fastify
TrustCaptcha – Bot-Schutz

Fastify CAPTCHA-Integration

Binden Sie TrustCaptcha mit wenigen Zeilen TypeScript in eine Fastify-Route oder einen preHandler-Hook ein. Stoppen Sie botgetriebenen Spam in Logins, Registrierungen und Kontaktformularen – ohne Ihre Schema-Validierung oder das formbody-Plugin 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 Fastify-Route ausliefert. Das Widget läuft im Hintergrund und fügt beim Absenden ein verstecktes Feld tc-verification-token hinzu, das auf request.body 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 Fastify-Route validieren

Holen Sie in Ihrem Fastify-Route-Handler den Verifikationstoken aus request.body, 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 zusammen mit Fastifys formbody-Plugin:

Install
bash
npm i fastify @fastify/formbody @trustcomponent/trustcaptcha-nodejs

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

server.ts
TypeScript
import Fastify from "fastify";
import formbody from "@fastify/formbody";
import { TrustCaptcha } from "@trustcomponent/trustcaptcha-nodejs";

const fastify = Fastify();
await fastify.register(formbody);

fastify.post("/contact", async (request, reply) => {
  const body = request.body as Record<string, string>;
  const token = body["tc-verification-token"] ?? "";

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

  // CAPTCHA bestanden — Anfrage verarbeiten
  return reply.send("Thanks!");
});

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

Dokumentation lesen

Anderes Backend-Framework statt Fastify?
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 Fastify-App läuft die CAPTCHA-Verifizierung?
Im Route-Handler, der das Formular-Submit empfängt – oder, für mehrere geschützte Routen, in einem preHandler-Hook (Fastifys Pendant zu Per-Route-Middleware). Der CAPTCHA-Token kommt auf request.body unter dem Standardnamen "tc-verification-token" an.
Brauche ich ein spezielles Plugin, um Form-Submits zu empfangen?
Ja. Fastify parst JSON automatisch, aber für application/x-www-form-urlencoded (das übliche HTML-Form-Submit) registrieren Sie das Plugin @fastify/formbody. Ohne dieses Plugin ist request.body bei Form-Submits undefiniert – die CAPTCHA-Verifizierung hat dann nichts zu lesen.
Wie teile ich API-Key und SDK über die Routen hinweg?
Bauen Sie eine einzige TrustCaptcha-Instanz beim Start, hängen Sie sie über fastify.decorate("trustCaptcha", instance) an und lesen Sie sie in jeder Route oder jedem Hook über request.server.trustCaptcha. So vermeiden Sie, das SDK pro Request neu aufzubauen.
Entfernt Fastifys JSON-Schema-Validierung den CAPTCHA-Token?
Möglicherweise. Wenn Sie ein striktes Body-Schema für die Route deklariert haben, ergänzen Sie tc-verification-token darin (oder setzen Sie additionalProperties: true), damit der Token nicht entfernt wird, bevor Hook oder Handler ihn lesen.
Kann ich den CAPTCHA-Hook auf eine Route-Gruppe begrenzen?
Ja. Registrieren Sie den preHandler global in einem fastify.register(...)-Plugin, das auf einen Routen-Prefix gescopt ist (z.B. /forms) – so läuft die Verifizierung automatisch für jede Route unter diesem Prefix.
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 Fastify-Anwendung mit TrustCaptcha – in nur wenigen Schritten!

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