Next.js
TrustCaptcha – Bot-Schutz

Next.js CAPTCHA-Integration

Binden Sie TrustCaptcha mit wenigen Zeilen TypeScript in einen Next.js-Route-Handler oder eine Server Action ein. Stoppen Sie botgetriebenen Spam in Logins, Registrierungen und Kontaktformularen – mit unserem React-Widget im Client und Server-seitiger Verifizierung. 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 Ihre Form-Komponente einbauen

Nutzen Sie unseren React-Wrapper in der Client Component, die Ihr Formular rendert. Das Widget läuft im Hintergrund und fügt beim Absenden ein verstecktes Feld tc-verification-token hinzu, das Server Actions und Route Handler als Form Data erhalten.

Installieren Sie zunächst unser TrustCaptcha-React-Paket:

Install
bash
npm i @trustcomponent/trustcaptcha-react

Setzen Sie dann den <TrustcaptchaComponent> in die Client Component, die Ihr Formular rendert:

app/contact/contact-form.tsx
TypeScript
"use client";

import { TrustcaptchaComponent } from "@trustcomponent/trustcaptcha-react";

export function ContactForm() {
  return (
    <form method="post" action="/api/contact">
      <input type="email" name="email" required />
      <TrustcaptchaComponent sitekey="<your_site_key>" />
      <button type="submit">Send</button>
    </form>
  );
}

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

CAPTCHA abgeschlossen

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

Dokumentation lesen

3. Token in einem Route Handler oder einer Server Action validieren

Holen Sie in einem Next.js-Route-Handler (oder einer Server Action) den Verifikationstoken aus den Form-Daten, 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 @trustcomponent/trustcaptcha-nodejs

Validieren Sie dann den Token in Ihrem Route Handler und reagieren Sie auf das Ergebnis:

app/api/contact/route.ts
TypeScript
import { NextResponse } from "next/server";
import { TrustCaptcha } from "@trustcomponent/trustcaptcha-nodejs";

export async function POST(request: Request) {
  const formData = await request.formData();
  const token = String(formData.get("tc-verification-token") ?? "");

  try {
    const result = await TrustCaptcha.getVerificationResult(process.env.TRUSTCAPTCHA_API_KEY!, token);
    if (!result.verificationPassed || result.score > 0.5) {
      return NextResponse.json({ error: "CAPTCHA verification failed." }, { status: 400 });
    }
  } catch {
    return NextResponse.json({ error: "CAPTCHA verification failed." }, { status: 400 });
  }

  // CAPTCHA bestanden — Anfrage verarbeiten
  return NextResponse.json({ status: "ok" });
}

Detaillierte Informationen zur Next.js-CAPTCHA-Integration?
Für die vollständige Schritt-für-Schritt-Anleitung – inklusive einer Server-Action-Variante und eines wiederverwendbaren Verifier-Utilities – lesen Sie bitte unsere Dokumentation.

Dokumentation lesen

Anderes Backend-Framework statt Next.js?
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

Funktioniert TrustCaptcha mit App Router und Pages Router?
Ja, beides. Im App Router validieren Sie den Token typischerweise in einem Route Handler (app/api/.../route.ts) oder einer Server Action. Im Pages Router machen Sie dasselbe in einer API-Route (pages/api/...) – der SDK-Aufruf ist identisch.
Kann ich das CAPTCHA aus einer Server Action heraus prüfen?
Ja – und das passt sehr gut. Lesen Sie den Token aus den FormData, die in Ihre "use server"-Action gereicht werden, rufen Sie unsere Node.js-Library auf und geben Sie bei Fehlschlag einen Fehler zurück. Das CAPTCHA bleibt vollständig serverseitig, und Ihre Client Component sieht den API-Key nie.
Funktioniert das React-Widget in einer Server Component?
Das Widget läuft im Browser, rendern Sie es daher aus einer Client Component ("use client"). Das Formular kann trotzdem an eine Server Action oder einen Route Handler abgesendet werden – die Verifizierung passiert komplett serverseitig.
Kann ich die CAPTCHA-Verifizierung auf Edge Runtime laufen lassen?
Nein. Unsere Node.js-Library nutzt Node-spezifische APIs (axios). Setzen Sie die Runtime auf Routen, die CAPTCHA-Tokens prüfen, auf "nodejs". Die Default-Runtime in Next.js ist bereits "nodejs" – Sie müssen nur eingreifen, wenn Sie runtime = "edge" explizit gesetzt haben.
Wo speichere ich den CAPTCHA-API-Key in einem Next.js-Projekt?
In .env.local während der Entwicklung und in den Environment Variables Ihres Hosting-Providers (Vercel, Netlify, …) in Produktion. Lesen Sie ihn über process.env.TRUSTCAPTCHA_API_KEY innerhalb von Server-Code – niemals über NEXT_PUBLIC_* exponieren.
Wie halte ich das CAPTCHA-Verifizierungs-Utility aus dem Client-Bundle heraus?
Fügen Sie import "server-only" am Anfang der Datei hinzu, die unsere Node.js-Library importiert. Damit lässt Next.js den Build fehlschlagen, sobald die Datei in eine Client Component gelangt – das verhindert, dass der API-Key versehentlich an den Browser ausgeliefert wird.
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 Next.js-Anwendung mit TrustCaptcha – in nur wenigen Schritten!

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